2010-01-05 27 views
0

我有一个Linq到SQL数据上下文类,我正在触发一个存储过程。我可以通过生成的代码跟踪存储过程被触发的位置。我检查了System.Data.Linq.SqlClient.SqlProvider.ExecuteResult并可以看到有一个名为“value”的私有成员,其中包含更新的行数。似乎没有任何公共访问器,并且结果似乎也不会返回到数据上下文无论如何。有没有其他的方式来访问这个值,或者我必须从每个存储过程(yuck)返回@@ RowCount?获取行更新使用存储过程和Linq到SQL计数

回答

0

嗯。诚然,这是一个“最好的猜测”,因为我还没有与存储过程尝试过了,但是这是你在找什么:

... Do Updates ... 
// if sdc is your DataContext 
int changedRecords = sdc.GetChangeSet().Updates.Count(); 
sdc.SubmitChanges(); 

这对更新的记录,你可以用.Inserts取代.Updates并根据需要删除。只要存储过程是数据上下文的一部分,就应该由GetChangeSet()来跟踪它。

相关问题