您好我收到错误“ObjectContext实例已被处理,不能再用于需要连接的操作”。当我从wcf服务运行一些方法时。所有这些都使用新的上下文对象,并且大多数都运行没有问题。然而,这个仍然给出了上面的错误,尽管在我的代码中有几个具有类似实现的方法在上面的几行中成功:
public CustomAuthentication.WebService.Application GetApplicationByUrl(string url)
{
try
{
using (AuthenticationEntities2 auth = new AuthenticationEntities2())
{
Application app = auth.Applications.Where(a => a.Url.Contains(url)).FirstOrDefault();
return app;
}
}
catch (Exception ex)
{
throw new FaultException(ex.Message + "\r\n" + ex.StackTrace + "\r\n" + ex.InnerException);
}
}
我最初也从vs看到了这个错误“底层连接已关闭:服务器已关闭预期保持活动状态的连接。”所以我认为在我的wcf服务中序列化对象是一个问题。所以我对服务进行了一些跟踪,发现了上面的错误。所以现在相信它的实体相关。有什么想法吗?
答案 0 :(得分:1)
尝试关闭ObjectContext上的延迟加载。很可能你的应用程序包含在序列化期间触发延迟加载的导航属性。