Colocar Resposta 
 
Avaliação do Tópico:
  • 0 votos - 0 Média
  • 1
  • 2
  • 3
  • 4
  • 5
C# arrays & reflection
02-01-2009, 16:00
Mensagem: #2
RE: C# arrays & reflection
(26-11-2008 12:23)abip Escreveu:  Boas,

O meu problema é o seguinte:
tenho que criar um array em runtime com recurso a reflexão mas nao conheço nem o tipo nem o tamanho do array a ser criado.

O cabeçalho do meu metodo:
Código:
public static O OMeuMetodo<I, O>(I value)

em que o generico 'O' representa uma classe que possui uma propriedade 'Items', sendo esta um array cujo tipo varia consoante o tipo de 'O'.
O generico 'I' representa também uma classe de tipo desconhecido e com varias propriedades, a partir das quais vai ser criado o array.

Após aplicar a minha logica de negócio, tenho de transformar as propriedades de 'I' em instancias de uma nova classe e adicioná-las ao dito array, à medida que vão sendo transformadas. Para isto preciso de um array ou uma lista auxiliar para que depois possa fazer um 'set' à propriedade 'Items', com o seguinte código:


Código:
O outObject = (O)typeof(O).Assembly.CreateInstance(typeof(O).FullName);

typeof(O).GetProperty("Items").SetValue(outObject, auxArray, null);

Alguém me sabe dizer como posso criar o array auxiliar, uma vez que as classes representadas por 'O' não implementam qualquer interface que permita conversões.

Cumps,
e venham daí os gurus de C# Wink

http://gsraj.tripod.com/dotnet/reflection.html

Primeiro link apresentado pelo google ao procurar por C# reflection, penso que te serve.
Visitar Website de este utilizador Procurar todas as mensagens deste utilizador
Citar esta mensagem numa resposta
Colocar Resposta 


Mensagem neste Tópico
C# arrays & reflection - abip - 26-11-2008, 12:23
RE: C# arrays & reflection - Shogun - 02-01-2009 16:00
RE: C# arrays & reflection - abip - 07-01-2009, 13:58
RE: C# arrays & reflection - Pirotas - 07-03-2009, 12:58
RE: C# arrays & reflection - Shogun - 07-03-2009, 14:18
RE: C# arrays & reflection - Pirotas - 07-03-2009, 18:36

Saltar Fórum:


Utilizadores a ver este tópico: 2 Visitante(s)