实体框架无法检索元数据
本文关键字:检索 元数据 框架 实体 | 更新日期: 2023-09-27 18:09:33
我用的是EF 6 pre-3。
产品模型:namespace ProductStore.Models
{
public class Product
{
[ScaffoldColumn(false)]
public int Id { get; set; }
[Required]
public string Name { get; set; }
public decimal Price { get; set; }
public decimal ActualCost { get; set; }
}
}
当我创建一个控制器,我得到以下错误:
Unable to retrieve metadata for 'ProductStore.Models.Project'. Unable to cast object of type 'System.Data.Entity.Core.Objects.ObjectContext' to type 'System.Data.Objects.ObjectContext'.
上下文是:
namespace ProductStore.Models
{
public class OrdersContext : DbContext
{
public OrdersContext()
: base("name=OrdersContext")
{
}
public DbSet<Product> Products { get; set; }
public DbSet<Order> Orders { get; set; }
public DbSet<OrderDetail> OrderDetails { get; set; }
}
}
我的连接字符串是:
<add name="OrdersContext" connectionString="Data Source=(LocalDB)'v11.0;AttachDbFilename=|DataDirectory|'Orders.mdf;Integrated Security=True" providerName="System.Data.SqlClient" />
Entity Framework 6不支持脚手架。使用NuGet包管理器控制台获取实体框架5将解决这个问题。然后,您将能够使用CRUD操作创建您的控制器。这里是NuGet EF5的链接
我已经测试过了,实体框架6还不能做脚手架。
我也测试过,我认为实体框架6不稳定5.
将EF更新到版本6.0.1,然后重新构建解决方案。