asp.net-mvc – MVC存储库模式:创建模型类
发布时间:2020-12-16 06:34:54 所属栏目:asp.Net 来源:网络整理
导读:回顾Conery的店面,我不明白为什么他使用了 Linqs自动生成的类(即Order类),然后他定义了另一个不是部分类的Order类.使用存储库模式时应该手动创建类,并完全忽略Datacontext吗? 解决方法 如果不使用中间类将前端与linq类分离,则无法使用数据上下文控制垃圾收
回顾Conery的店面,我不明白为什么他使用了
Linqs自动生成的类(即Order类),然后他定义了另一个不是部分类的Order类.使用存储库模式时应该手动创建类,并完全忽略Datacontext吗?
解决方法
如果不使用中间类将前端与linq类分离,则无法使用数据上下文控制垃圾收集.通常使用数据上下文类型的实例,您希望在使用它们后立即将其删除.以下是使用linq to sql上下文执行此操作的方法:
using (MyDataContext data = new MyDataContext()) { SomeThing thing = data.Things(t => t.ID == 1); return thing; } ... the MyDataContext instance is gone 使用“using”块,您将在最后一个“}”处理MYDataContext的实例.但是,如果你这样做,你会得到一个错误,然后尝试使用“东西”,因为数据上下文实例已经消失.如果你不处理数据上下文,它会一直闲逛,直到它最终被垃圾收集. 如果您引入一个中间类来将linq与sql代码从调用应用程序分离,您仍然可以摆脱数据上下文实例并返回相同的数据(仅在不同的对象中): using (MyDataContext data = new MyDataContext()) { SomeThing thing = data.Things(t => t.ID == 1); SometThingElse otherThing = ConvertSomethingToSomethingElse(thing); return otherThing; } ... the MyDataContext instance is gone 希望有所帮助. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- asp.net-mvc – 如何在ASP.NET MVC控制器中访问HttpServerU
- asp.net-mvc-3 – 在ASP.NET MVC中使用多个部分时重复输入i
- Asp.net .net(C#) 获取当前命名空间,类名,方法名的方法
- asp.net-mvc-3 – 当使用Html.TextBoxFor时,将模型的名称添
- asp.net-mvc-3 – ASP.NET MVC3的AntiForgeryToken有哪些实
- asp.net-mvc – 如何在ChildAction上删除OutputCache?
- Asp.net UserControl LoadControl问题
- asp.net-mvc – ASP.net MVC – 为一个用户/角色授权控制器
- asp.net – 如何检查SQL Server代理是否正在运行
- asp.net – 无Cookie属性web.config
推荐文章
站长推荐
- asp.net-mvc – MVC可选参数默认值
- asp.net – 缓存通过VirtualPathProvider返回的静
- asp.net – 在Web.config中读取和编辑配置
- asp.net – Session不会保留值并始终返回null
- asp.net-core – 如何在EF Core 2.1.0中为Admin用
- asp.net – 如何添加两个CSS类来控制代码背后?
- asp.net-mvc-3 – 可以用“@:@”修复的MVC4剃刀
- asp.net MVC解决方案/项目布局
- asp.net-mvc – 自定义WIF请求验证器无限循环
- asp.net-mvc – 我可以创建一个带有MVC3助手的选
热点阅读