遇到Asp.net MVC Unleashed Generic Repostitory的问题

时间:2009-08-11 06:06:10

标签: asp.net-mvc entity-framework

我刚拿到这本书

其中有一个.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以满足此关系所需的值。

1 个答案:

答案 0 :(得分:0)

方法EFGenericRepository.Create以某种方式猜测为Car实体设置的实体被称为“CarSet”。但显然不是。因此,您可以查看该方法的代码,以查看实体集名称的来源或更改实体模型中Car实体集的名称。