我只想用回滚提交更新单行列值
i want to update only single row column value with rollback commit
我只想用回滚提交更新单行列值但是当我在 if 中创建 table 对象并传递给 insertonsubmit 它给我错误,请帮助我如何解决这个
var challan = dataContext.Purchase_Challans.Where(t => t.Challan_ID == Convert.ToInt64(ViewState["challanid"]) && t.Company_ID == Convert.ToInt32(Session["CompanyId"])).Select(t => t).ToList();
if (challan.Any())
{
challan.ToList()[0].Inv_DocumentId = dmsPurchaseInvoice.Document_ID;
dataContext.Purchase_Challans.InsertOnSubmit()
dataContext.SubmitChanges();
}
了解有关错误的更多详细信息会有所帮助,但我认为这是因为您告诉 dataContext 插入您刚刚检索到的实体(而您想要更新它)。
此外,您发布的代码甚至无法编译并且充满了有问题的代码,例如 challan.ToList()
它已经是一个列表,或者在委托中解析字符串。
也就是说,这段代码更直接也更可能工作(但老实说我没有测试它):
var challanId = Convert.ToInt64(ViewState["challanid"]);
var companyId = Convert.ToInt32(ViewState["CompanyId"]);
var challan = dataContext.Purchase_Challans.SingleOrDefault(t => t.Challan_ID == challanId && t.Company_ID == companyId);
if (challan != null)
{
challan.Inv_DocumentId = dmsPurchaseInvoice.Documet_Id;
dataContext.SubmitChanges();
}
我只想用回滚提交更新单行列值但是当我在 if 中创建 table 对象并传递给 insertonsubmit 它给我错误,请帮助我如何解决这个
var challan = dataContext.Purchase_Challans.Where(t => t.Challan_ID == Convert.ToInt64(ViewState["challanid"]) && t.Company_ID == Convert.ToInt32(Session["CompanyId"])).Select(t => t).ToList();
if (challan.Any())
{
challan.ToList()[0].Inv_DocumentId = dmsPurchaseInvoice.Document_ID;
dataContext.Purchase_Challans.InsertOnSubmit()
dataContext.SubmitChanges();
}
了解有关错误的更多详细信息会有所帮助,但我认为这是因为您告诉 dataContext 插入您刚刚检索到的实体(而您想要更新它)。
此外,您发布的代码甚至无法编译并且充满了有问题的代码,例如 challan.ToList()
它已经是一个列表,或者在委托中解析字符串。
也就是说,这段代码更直接也更可能工作(但老实说我没有测试它):
var challanId = Convert.ToInt64(ViewState["challanid"]);
var companyId = Convert.ToInt32(ViewState["CompanyId"]);
var challan = dataContext.Purchase_Challans.SingleOrDefault(t => t.Challan_ID == challanId && t.Company_ID == companyId);
if (challan != null)
{
challan.Inv_DocumentId = dmsPurchaseInvoice.Documet_Id;
dataContext.SubmitChanges();
}