我是数据库和C#的新手。我正在构建一个EPOS软件,我只是想 将DataGridView中的数据引用到SQL数据库中(如果我说它是正确的)。 好的,这就是我想要做的事情:
如照片中所示,我在DataGridView中有customer1订单详细信息(3行),此详细信息仅适用于一个customer1。现在,当我完成customer1时,其订单详细信息将保存在数据库中。接下来,当我完成customer2订单时,其详细信息将保存在数据库中。接下来,customer3订单详细信息将保存在数据库....等等。
现在例如在将来的某个时候我想回读/编辑(或检查) customer2从数据库订购详细信息并将其填充到DataGridView。
我一直在考虑怎么做但我失败了,我很困惑。 能否请您提供一个关于如何检查Customer2订购内容的想法或代码。谢谢。
答案 0 :(得分:0)
创建代表您的表的Customer
模型。然后创建一个返回集合的方法。我将假设您已经设置了连接字符串并知道如何使用c#在代码中读取它。所以代码看起来像:
public class Customer
{
public int Quantity { get; set; }
public string Description { get; set; }
public double Price { get; set; }
}
public List<Customer> GetCustomerData()
{
var list = new List<Customer>();
string sqlQuery = "SELECT Qty, Des, Price From MyTable Where Customer = SomeCustomer"; //Change accordingly
string connectionString = "Your Connection String";
using (var connection = new SqlConnection(connectionString))
{
using (var cmd = new SqlCommand(sqlQuery, connection))
{
connection.Open();
using (var reader = cmd.ExecuteReader())
{
while (reader.Read())
{
var c = new Customer();
c.Quantity = Convert.ToInt32(reader["Qty"]);
c.Description = reader["Des"].ToString();
c.Price = Convert.ToDouble(reader["Price"]);
list.Add(c);
}
}
}
}
return list;
}
Finnaly在DataGrid
上显示数据:
MyGrid.ItemsSource = GetCustomerData(); //Change MyGrid to whatever you've named your grid
请注意:我尚未测试上述代码,因此可能需要进行一些小的更改。但它应该给你一个好主意。