DB 有一个表叫 PackagingInfo
。我有一个名为 Package
的类,以及继承自 DbContext 的 ShopEntities
。
// Entity (ex. Package.cs)
[Table("PackagingInfo")]
public class Package
{
public decimal PackageID { get; set; }
public decimal Title { get; set; }
public decimal Cost { get; set; }
public bool isFree { get; set; }
}
// Entity Context (ex. ShopEntities.cs)
public class ShopEntities : DbContext
{
public DbSet<Package> Packages { get; set; }
}
// Controller Action (ex. HomeController.cs)
public ActionResult Index()
{
ShopEntities _db = new ShopEntities();
var q = _db.Packages.ToList();
return View(q);
}
在实例化_db
上下文并检查其Packages
属性时,注意到了一个异常:
The entity type Package is not part of the model for the current context.
更新
我已经编辑了这个问题并请求重新开放,因为在模型优先方法中也出现了这种情况,在该方法中,表映射是在EDMX文件中完成的,而不是在这里注意到的注释中:
模型浏览器窗口显示Package
在模型和存储实体类型中,并且实体的表映射显示每个属性正确地映射到表列。这与注释代码优先样式实现的相同映射。