C# 实体状态错误
我现在正在做一个项目,在修改实体状态时出现了一个错误,我已经包含了代码并用粗体突出显示了代码行。这就是我犯的错误,有人能帮我吗 错误4中不存在类型或命名空间名称“EntityState” 命名空间“System.Data”(是否缺少程序集 参考?)C:\Users\podge\Desktop\sportstore\sportstore\Models\Repository\Repository.cs 35 27 sportstoreC# 实体状态错误,c#,asp.net,C#,Asp.net,我现在正在做一个项目,在修改实体状态时出现了一个错误,我已经包含了代码并用粗体突出显示了代码行。这就是我犯的错误,有人能帮我吗 错误4中不存在类型或命名空间名称“EntityState” 命名空间“System.Data”(是否缺少程序集 参考?)C:\Users\podge\Desktop\sportstore\sportstore\Models\Repository\Repository.cs 35 27 sportstore 使用系统; 使用System.Collections.Gener
使用系统;
使用System.Collections.Generic;
使用System.Linq;
使用System.Web;
使用System.Data.Entity;
命名空间sportstore.Models.Repository
{
公共类存储库{
私有EFDbContext上下文=新EFDbContext();
公共可数产品{
获取{return context.Products;}
}
公共数字命令
{
得到
{
返回上下文
.包括(o=>o.订单行
.选择(ol=>ol.Product));
}
}
公共作废保存单(订单)
{
如果(order.OrderId==0)
{
order=context.Orders.Add(订单);
foreach(订单中的订单行。订单行)
{
context.Entry(line.Product).State
**=System.Data.EntityState.Modified**
}
}
其他的
{
orderdborder=context.Orders.Find(Order.OrderId);
if(dbOrder!=null)
{
dbOrder.Name=order.Name;
dbOrder.Line1=order.Line1;
dbOrder.Line2=order.Line2;
dbOrder.Line3=order.Line3;
dbOrder.City=order.City;
dbOrder.State=order.State;
dbOrder.GiftWrap=order.GiftWrap;
dbOrder.Dispatched=order.Dispatched;
}
}
SaveChanges();
}
}
}
EntityState
属于系统.Data.Entity
命名空间,而不是系统.Data
。但是在您的代码中,您像System.Data.EntityState
文件顶部已经有一个using
语句,用于System.Data.Entity
名称空间。因此,您不需要完全限定的名称。您只需使用EntityState.Modified
更换
context.Entry(line.Product).State= System.Data.EntityState.Modified;
与
context.Entry(line.Product).State= EntityState.Modified;
使用NuGet Manager更新entityFramework版本
context.Entry(line.Product).State= EntityState.Modified;