如何解决执行1次查询后,每个http请求分配的ObjectContext实例
| 我正在考虑将ObjectContext放在HttpContext.Current中,以便同一请求中的所有逻辑都可以访问它,而不必每次都打开/销毁。 在ObjectContextManager类中,我创建了这个。get {
string ocKey = \"ocm_\" + HttpContext.Current.GetHashCode().ToString(\"x\");
if (!HttpContext.Current.Items.Contains(ocKey))
HttpContext.Current.Items.Add(ocKey,new JEntities());
return HttpContext.Current.Items[ocKey] as JEntities;
}
然后我每次对当前请求执行查询时都调用此静态属性。
public static JEntities CurrentObjectContext {
get {
if (ObjectContextManager == null)
InstantiateObjectContextManager();
return ObjectContextManager.ObjectContext;
//return new JobsEntities();
}
}
但是,当它尝试执行第二个查询时,它会被丢弃。
你能告诉我我哪里出问题了吗?
解决方法
处理了吗您的代码与处置无关。如果您处置了上下文,则意味着您很可能将上下文检索包含在“ 2”中,并且您自行处置了实例。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。