我正在尝试更新数据库中的多条记录,我有以下代码,我用它来更新1项。
如何更新多个?
abcProduct productUpdate = dc.abcProducts.Single(p => p.feedSubmitId == submissionId);
productUpdate.prodPublished = '1';
答案 0 :(得分:0)
var products = dc.abcProducts.Where(p => p.feedSubmitId == submissionId);
foreach(var product in products)
{
product.prodPublished = '1';
}
答案 1 :(得分:0)
试试这个
dc.abcProducts.Where(p => p.feedSubmitId == submissionId).ToList().ForEach(x=>x.prodPublished = '1');
答案 2 :(得分:0)
您还可以在数据库中编写存储过程。
CREATE PROCEDURE SetProdPublished
@submissionId int
@prodPublished int
AS
UPDATE AbcProducts SET prodPublished = @prodPublished
WHERE feedSubmitId = @submissionId
然后将该存储过程拖到DBML中。然后,您可以调用该存储过程。
dataContext.SetProdPublished(someSubmissionId, 1);
如果要更新多行,这比在代码循环中更新它们要快,如果你要更新很多行,速度会快得多。