使用Linq To Sql/Entities,我们有足够的灵活性来编写select查询
但是update查询呢?
如果我需要做一些像这样简单的事情怎么办:
UPDATE suppliers
`SET supplier_name = (SELECT customers.name FROM customers WHERE customers.customer_id = suppliers.supplier_id)`使用Linq to Sql时,我需要运行大量的更新查询来完成任务。首先,我需要选择我需要更新的实体,然后我需要更新它们中的每一个,接缝非常慢。
有没有办法让它变得简单,或者只有存储过程映射在这种情况下可能会有所帮助?
发布于 2010-08-27 04:07:44
你可能想看看PLINQO。它为LINQ to SQL添加了批量更新/删除以及更多内容。
发布于 2010-08-26 20:33:39
对于像这样的批处理操作,我会直接使用SQL。在LINQ to SQL中,您可以使用DataContext.ExecuteCommand()来实现这一点。例如:
db.ExecuteCommand("UPDATE suppliers SET supplier_name = (SELECT customers.name FROM customers WHERE customers.customer_id = suppliers.supplier_id)");如果您认为内联SQL是邪恶的,那么可以看看在LINQ to SQL中启用批量更新和删除的this post by Terry Aney。我对此没有经验,但它看起来很有趣。
https://stackoverflow.com/questions/3574813
复制相似问题