2011-09-11 1 views
0

Ceci est mon premier projet C#, en utilisant VS 2008 et .NET 3.5, requis par le client.Rendre le résultat SQL avoir un type de classe

J'ai une liste de type GradeVO

C'est ma connexion et où je suis la définition des valeurs à un DataGridView

DataSet ds = new DataSet(); 
SqlConnection Conexao = new SqlConnection(@"Data Source=localhost; Initial Catalog=usr_mmidia; User ID=usr_mmidia; Password=123; MultipleActiveResultSets = true"); 
Conexao.Open(); 
SqlDataAdapter da = new SqlDataAdapter("MAG_SP_LISTA_SETORES_SQL", Conexao); 
da.SelectCommand.Parameters.Add(new SqlParameter(("@p_codfil"), @"500")); 
da.SelectCommand.Parameters.Add(new SqlParameter(("@p_categoria"), categoria)); 
da.SelectCommand.CommandType = CommandType.StoredProcedure; 
DataTable t = new DataTable(); 
da.Fill(t); 
dgNivel1.DataSource = t; 

Ce code fonctionne, mais j'ai besoin du DataSource pour recevoir une liste des GradeVO, est-ce possible?

Merci d'avance.

+2

Êtes-vous lié à l'utilisation des jeux de données? Si vous utilisez LINQ-to-SQL, il gérera automatiquement le mappage de SQL vers les objets. Ce n'est pas considéré comme génial de nos jours, mais il est facile d'y aller et vient avec le framework .NET. –

Répondre

0

vous pouvez toujours faire quelque chose comme:

var myDataSource = t.Select(row => new GradeVO 
             { 
              //your initialization logic here to get 
              //stuff from the row into the object 
             }); 
dgNivel1.DataSource = myDataSource; 
Questions connexes