将datacontext设置为属性是否存在任何潜在问题:
知识库
public Repository() { public DataContext dc {get;set;} public GetOrders(int id) { ...from dc.Orders...} }
服务层:
public GetNewOrders() { .... Repository rep=new Repository(); using {DataContext dc=new DataContext()) { rep.dc=dc; rep.GetOrders(id); } }
flipdoubt.. 5
根据我的阅读,使用DataContext" 进行多个业务对话通常是错误的做法." 向下滚动到为什么这很重要?报价部分.由于缓存和其他因素,您应该立即考虑您的DataContext陈旧.由此可以肯定地说,您不希望将DataContext保留为所有方法都重用的属性.使用Eric Duncan的建议,您将需要传递某种DataContext工厂来为每个查询获取新的上下文.
对于专注于DataContext的讨论,APress Pro LINQ书中有一章关于DataContext,最后一页还建议你"立即考虑DataContext陈旧".
根据我的阅读,使用DataContext" 进行多个业务对话通常是错误的做法." 向下滚动到为什么这很重要?报价部分.由于缓存和其他因素,您应该立即考虑您的DataContext陈旧.由此可以肯定地说,您不希望将DataContext保留为所有方法都重用的属性.使用Eric Duncan的建议,您将需要传递某种DataContext工厂来为每个查询获取新的上下文.
对于专注于DataContext的讨论,APress Pro LINQ书中有一章关于DataContext,最后一页还建议你"立即考虑DataContext陈旧".