首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >C# Linq在每次读取后查看审核注销

C# Linq在每次读取后查看审核注销
EN

Stack Overflow用户
提问于 2009-03-30 21:51:16
回答 1查看 1.3K关注 0票数 1

这不是SQL Connection Pooling and Audit Login/Logout

我有一个C# SQL3.5应用程序,可以在本地数据库上更新SQL2008上的大约30K条记录。

逻辑是它首先检查记录是否存在SingleOrDefault(p => p.stock=stock && p.number=number),然后添加或更新记录。

我只关注使用SingleOrDefault的读取。

我使用SQLMetal.exe创建了datacontext文件。

在SQL Profiler中看到的每次读取后:

审核注销(1300个读取)

RPC:完成的sp_reset_connection

审核登录

RPC:已完成sp_executesql 'select etc...‘

我使用2005和不同的数据库在另一台机器上创建了一个新项目,但得到了不同的结果。

审核登录

RPC:已完成sp_execute SQL...

RPC:已完成sp_execute SQL...

RPC:已完成sp_execute SQL...

..。

有什么想法吗?

EN

回答 1

Stack Overflow用户

发布于 2009-08-14 17:50:05

将所有内容包装在TransactionState对象中为我解决了这个问题。例如:

代码语言:javascript
复制
using (TransactionScope ts = new TransactionScope())
{
   // do db stuff here

   ts.Complete();
}

请注意,即使我只进行数据库读取,我也是这样做的。

还要注意,如果项目中没有对System.Transactions的引用,则必须将其添加到项目中。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/699179

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档