我的代码中有一个对象“Kit”。
class Kit
{
private int _CK_ID;
public int CK_ID
{
get { return _CK_ID; }
set { _CK_ID = value; }
}
}
在我的代码中,我想填写一个套件列表
List<Kit> kits = new List<Kit>();
现在我想用数据库中的数据填充套件
我有一个解决方案:
将数据带到读取器,然后循环并将新套件插入列表。
但是我想把它做得“很好”,我怎么能做这样的事情呢
kits.fillData();
最佳答案
这取决于您希望如何构建代码以及您最熟悉的内容,您可以使用类似 Entity Framework 的内容或 NHibernate .
这显然取决于您的框架、任务要求和技能组合。
如果这不是一个选项,您可以根据您的 stored procedure
执行此操作或 select 语句带出与 Kit
相同的列名类。
public class KitList : List<Kit>
{
public void FillList()
{
using (SqlConnection con = new SqlConnection(""))
{
var cmd = new SqlCommand("GetData", con);
var dt = new DataTable();
var sda = new SqlDataAdapater(cmd);
sda.Fill(dt);
foreach(var row in dt.Rows)
{
Kit k = new Kit();
foreach(var col in dt.Columns)
{
k.GetType().GetProperty(col.Name).SetValue(obj, row[col.Name], null);
}
this.Add(k);
}
}
}
}
关于c# - 如何填写对象列表?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15090548/