asp.net – LINQ to SQL – 你的DataContext在哪里住?
|
我在数据访问对象库中使用LINQ to SQL。该库在Web(Web应用程序/ Web服务)和非Web(Windows服务)上下文中使用。最初,我将DataContext存储在当前的HttpContext中,因为它允许我管理一个相当小的工作单元(一个Web请求),并避免了Web应用程序中的全局对象。显然,这在Windows服务中不起作用。 Rick Strahl在管理DataContext的一生中有一篇很好的文章:http://www.west-wind.com/weblog/posts/246222.aspx.不幸的是,我不能在最好的方法上弥补我的想法。一个全局的DataContext不工作的原因,他提到,一个线程的DataContext看起来复杂,可能更麻烦,它的价值,一个每个对象的实例似乎很y – – 你失去一些优雅,当你附加DataContext用于创建一个DAO到那个DAO,所以它可以更新或删除以后 – 更不要说,有一些令人不快的鸡和鸡蛋的关系。 有没有人有个人经验,表明一种方法比另一种更好?或者更好,有没有人有第四或第五种方法,我没有看到?在哪里是存储和管理您的DataContext的最佳地点? 解决方法MSDN documentation on the DataContext class的指南是我建议如下:
因为DataContext是IDisposable,我发现最容易在一个方法中的using语句中创建和使用DataContext,所以它可以正确处理。 还要注意“任何实例成员不能保证是线程安全的”,所以在多个线程之间共享一个DataContext是不明智的。 (编辑:安卓应用网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
- asp.net-mvc – 将viewdata传递给asp.net mvc masterpages
- [asp.net mvc 奇淫巧技] 02 - 巧用Razor引擎在Action内生成
- asp.net-mvc – 我应该把我的控制器业务逻辑放在MVC3中
- asp.net-mvc – ASP.NET MVC:多个项目错误
- asp.net – 在asp页面中显示来自其他站点的网页
- asp.net – 如何获得大型LinkedIn图像共享格式
- 如何缓存输出的action方法,返回图像到asp.net mvc中的视图?
- asp.net – 对象“aspnet_CheckSchemaVersion”,数据库“XX
- asp.net – 从多个Web.config文件访问appSettings
- asp.net-mvc-3 – 超时在ASP.Net MVC FormsAuthentication中
- 回收ASP.NET应用程序是否会激起用户的兴趣?
- SimpleMembership与ASP.NET MVC 4中的自定义数据
- 一些.net中应该知道的问题
- asp.net – 是否可以使用Membership API更改用户
- asp.net – 有没有= window.onload在Javascript?
- asp.net-mvc – ASP.NET MVC:访问集合中项目的M
- asp.net-web-api – 间歇性“无法加载类型”Syst
- asp.net-mvc – 使用嵌套显示模板时如何防止Razo
- asp.net按钮点击w / javascript“你确定吗?”在
- asp.net-mvc – 如何阻止Elmah伐木?
