通过linq从结构中将记录插入到sql中

时间:2011-03-23 16:29:31

标签: c# sql linq linq-to-sql

目标:在C#中,获取结构并通过linq to sql将数据插入名为Product_Master的sql表 - 或者任何其他最有效的解决方案。

我正在使用以结构(product_ID, DateTime, Description)的形式返回响应的Web服务。结构的名称是productOutput。什么是实现这一目标的最有效方法。在项目的另一部分,我一直在使用linq to sql来查询表,所以为了保持一致性,我一直在尝试使用linq,但没有成功。我对最好的方式感兴趣,所以如果linq不是最好的方式我对任何解决方案持开放态度。注意:我是c#的新手,所以越多细节就越好。

2 个答案:

答案 0 :(得分:1)

在LINQ2SQL中,您首先需要将表添加到LINQ / DBML设计器,然后您可以在这样的代码中使用它

using (var context = new MyDataContext())
{
    var pm = new Product_Master(); // Type generated by the LINQ designer.
    pm.Property1 = "foo";
    pm.Property2 = 123;
    //...
    context.Product_Master.InsertOnSubmit(pm);
    context.SubmitChanges();
}

您需要手动将结构中的字段映射到Product_Master对象的属性。

答案 1 :(得分:1)

可能存在传递结构的问题,因为LINQ通常会更新对象中与表中的标识列对应的属性。这可能不适用于通过值传递的struct对象。我从未尝试过,但我认为我甚至不会因为潜在的并发症而尝试。