我刚拿到这本书
其中有一个.dll用于通用存储库。我跟着他做了什么,但我总是得到一个错误。
System.InvalidOperationException was caught
Message="The EntitySet name 'MyEntities.CarSet' could not be found."
Source="System.Data.Entity"
StackTrace:
at System.Data.Objects.ObjectContext.GetEntitySet(String entitySetName, String entityContainerName)
at System.Data.Objects.ObjectContext.GetEntitySetFromName(String entitySetName)
at System.Data.Objects.ObjectContext.AddObject(String entitySetName, Object entity)
at GenericRepository.EFGenericRepository.Create[T](T entityToCreate)
at CarSite.com.Controllers.RController.Institutions(FormCollection regForm) in I:\p\trunk\Current Site\Controllers\RController.cs:line 227
InnerException:
我不知道为什么我会这样做。我无法看到.dll所以我不知道那里发生了什么。
我写的其他资料库工作正常。这只是他的通用存储库。
我认为我拥有他所期望的所有类型视图,并且他需要的数据库内容通过参数作为类来实现。
我的表格是我这样做的
Car send = new Car();
send.Name= regForm["Name"];
send.CarID= regForm["ID"];
Authenticate.repository.Create<Car>(send);
我只是看不到这影响它?
修改
现在我收到此错误
Entities in 'Entities.CarSet' participate in the 'FK_Car_aspnet_Users' relationship. 0 related 'aspnet_Users' were found. 1 'aspnet_Users' is expected.
我不知道如何添加到我的Create语句中,传递int以满足此关系所需的值。
答案 0 :(得分:0)
方法EFGenericRepository.Create以某种方式猜测为Car实体设置的实体被称为“CarSet”。但显然不是。因此,您可以查看该方法的代码,以查看实体集名称的来源或更改实体模型中Car实体集的名称。