有人问这里:LINQ to SQL - 存储过程如何与unsubmited datacontext更改进行交互?
“Linq-To-Sql支持调用SP,如果这个SP执行更新/删除/插入,我需要在它后面的SubmitChanges()吗?
而答案是:
“不,你不代码将提交工作变动只涉及修改的LINQ to SQL对象,而不是存储的特效。”
我只想澄清:
(请原谅我,我是比较新的LINQ)
是的,但不会存储过程旁路DataContext对象和修改数据库本身? (而linq只修改datacontext对象,直到调用datacontext.submitchanges方法,然后修改数据库)
我可以让存储过程以某种方式修改我的datacontext对象吗?它已经这样做了吗?
我可以把它使
- 如果我叫LINQ的一个SP(和我假设它直接修改数据库),
- 然后使用LINQ修改我的DataContext对象,并提交(我的datacontext一个与SP,其他与LINQ)我对我的DataContext对象所做的更改,
我做了两个不同的变化不会干涉?
我真正想要的是一种让我的存储过程修改我的datacontext的方法。这可能吗?
我应该提到,我正在将一个网站从SQL转换为LINQ,主要是存储过程,并尝试选择与哪些存储过程转换为LINQ以及哪些存储过程保留在SQL中的战斗,并只对其进行SP调用与LINQ。
感谢你的帮助,-Jeff
“如果您需要控制工作单元,请考虑放置TransactionScopes”。或者只需手动打开一个连接,在其中启动一个事务并将该连接提供给DataContext的构造函数之一。 – Steven 2010-08-06 15:15:51