我在大网络应用程序的中间,我使用实体框架为我的数据服务,现在我们需要一些Windows应用程序与我们的数据进行工作,所以我想给他们一个服务与WCF访问Web和win表单应用程序中WCF服务的实体框架数据时出错?
但是,当我客户希望得到的服务有一些误差是从我的公共财产发生了,我使用的缓存实体模型
public partial class DepositEntities : ObjectContext
{
public static DepositEntities Current
{
get
{
DepositEntities oc =
HttpContext.Current.Items["ObjectContext"] as DepositEntities;
if (oc == null)
{
oc = new DepositEntities();
HttpContext.Current.Items["ObjectContext"] = oc;
}
return oc;
}
}
}
我知道这个问题是从这一行,经过调试我的代码
DepositEntities oc = System.Web.HttpContext.Current.Items["ObjectContext"] as DepositEntities;
当我改变我的Current
财产的身体像这样
public static DepositEntities Current
{
get
{
DepositEntities oc = new DepositEntities();
return oc;
}
}
一切有些事情是确定,当我从服务中获得的数据我没有问题
但是无论我参加我的代码我有,因为它认为有不同的数据问题由于new DepositEntities();
它是否引发异常或只是不回馈任何数据? – 2012-04-14 06:49:37
亲爱的@LosFrijoles异常就是**对象引用未设置为对象的实例。**对于此行{DepositEntities oc = System.Web.HttpContext.Current.Items [“ObjectContext”]作为DepositEntities;}但是此行当我想使用WCF时,在我的整个项目中正常工作我得到这个错误 – WhizDeveloper 2012-04-14 06:58:39
'HttpContext'只存在于ASP.NET Web应用程序的上下文中。 Windows Forms应用程序没有'HttpContext',所以你不能使用它来缓存数据.....你需要检查一些不依赖于'HttpContext'的其他缓存手段。 – 2012-04-14 07:12:59