Usuário com melhor resposta
Acesso a colunas com nomes sequenciais

Pergunta
-
Olá,
Estou utilizando o Entity Framework e tenho uma tabela com colunas com nomes com o padrão: a1, a2, a3, etc.
Preciso acrescentar os dados em um objeto (registro) através de um for, o problema é que não sei como influenciar dinamicamente no nome das colunas. Ficaria algo assim:
dbEntities db = new dbEntities(); minhaTabela obj = new minhaTabela(); for (int i = 0; i < 3; i++) { //obj.a? = x; } db.minhaTabela.Add(obj); db.SaveChanges();
Como posso acessar dinamicamente o nome das colunas?
Obrigado!
Respostas
-
Olá Luiz Fernando,
Tudo bem?
Tente assim:
static void Main(string[] args) { Type currentType = typeof(TipoDados); TipoDados myObject = new TipoDados(); for (int i = 1; i <= 9; i++) { currentType.GetProperty("A" + i).SetValue(myObject, 10 + i); } } class TipoDados { public int A1 { get; set; } public int A2 { get; set; } public int A3 { get; set; } public int A4 { get; set; } public int A5 { get; set; } public int A6 { get; set; } public int A7 { get; set; } public int A8 { get; set; } public int A9 { get; set; } }
[]s!
MSc. Fernando Henrique Inocêncio Borba Ferreira
Microsoft MVP - Visual C#
while(alive){ this.WriteCode(); }
Blog: http://ferhenriquef.com/
Twitter: @ferhenrique
Entity Framework - Brasil: https://www.facebook.com/EntityFrameworkBrasil- Marcado como Resposta Luiz Fernando Cruz terça-feira, 29 de outubro de 2013 00:42
Todas as Respostas
-
-
Tenta fazer dessa forma,
dbEntities db = new dbEntities (); minhaTabela obj = new minhaTabela(); for (int i = 0; i < 3; i++) { obj.a1 = "Valor do Obj a1" + i.ToString(); obj.a2 = "Valor do Obj a2" + i.ToString(); obj.a3 = "Valor do Obj a3" + i.ToString(); } db.minhaTabela.Add(obj); db.SaveChanges();
<b>Diego Almeida Barreto<b><br/> System Analyst / Software Developer</b></b>
-
-
-
Olá Luiz Fernando,
Tudo bem?
Tente assim:
static void Main(string[] args) { Type currentType = typeof(TipoDados); TipoDados myObject = new TipoDados(); for (int i = 1; i <= 9; i++) { currentType.GetProperty("A" + i).SetValue(myObject, 10 + i); } } class TipoDados { public int A1 { get; set; } public int A2 { get; set; } public int A3 { get; set; } public int A4 { get; set; } public int A5 { get; set; } public int A6 { get; set; } public int A7 { get; set; } public int A8 { get; set; } public int A9 { get; set; } }
[]s!
MSc. Fernando Henrique Inocêncio Borba Ferreira
Microsoft MVP - Visual C#
while(alive){ this.WriteCode(); }
Blog: http://ferhenriquef.com/
Twitter: @ferhenrique
Entity Framework - Brasil: https://www.facebook.com/EntityFrameworkBrasil- Marcado como Resposta Luiz Fernando Cruz terça-feira, 29 de outubro de 2013 00:42