我需要构建两个对象:OrderList和Order。
使用这两个对象,我必须使用订单的历史记录填充DataGridView。但是,我被告知不要使用绑定源进行连接或其他拖放控件。不幸的是,谷歌似乎是这类问题最受欢迎的选择。
有人能指出我正确的方向吗?我对C#没有多少经验。
感谢。
答案 0 :(得分:6)
你可以创建一个Order
类:
public class Order
{
public int OrderID { get; set; }
public DateTime OrderDate { get; set; }
}
读取您的数据库记录并加载您的订单集
List<Order> orders = new List<Order>();
using(SqlConnection cn = new SqlConnection("..."))
using (SqlCommand cm = cn.CreateCommand())
{
cn.Open();
cm.CommandText = "SELECT OrderId, OrderDate FROM Orders";
SqlDataReader dr = cm.ExecuteReader();
while (dr.Read())
{
orders.Add(new Order()
{
OrderId = dr.GetInt32(dr.GetOrdinal("OrderId")),
OrderDate = dr.GetDateTime(dr.GetOrdinal("OrderDate"))
});
}
}
关于GridView部分,您应该查看ASP.NET data binding overview
答案 1 :(得分:0)
这实际上是一个相当微不足道的问题。你需要使用这些东西:
一旦有了dataadapter及其关联数据集,就可以循环填充网格。
答案 2 :(得分:0)
您可以绑定到实现IEnumerable的任何数据集合,因为当您在网格上调用DataBind()函数时,它将遍历数据并通过反映将网格绑定到存储在集合中的每个对象的属性(使用反射)该对象并查找与为网格中的每个绑定字段指定的DataField匹配的属性。