C# 为什么在修改模型类后发生错误?

C# 为什么在修改模型类后发生错误?,c#,asp.net-mvc,linq,entity-framework,C#,Asp.net Mvc,Linq,Entity Framework,我的模型是 public int Id { get; set; } public string Code { get; set; } public Nullable<int> PackageId { get; set; } public Nullable<int> ResellerId { get; set; } public Nullable<System.DateTime> AddedDT { get; set; } public Nullable<

我的模型是

public int Id { get; set; }
public string Code { get; set; }
public Nullable<int> PackageId { get; set; }
public Nullable<int> ResellerId { get; set; }
public Nullable<System.DateTime> AddedDT { get; set; }
public Nullable<System.DateTime> RedeemDT { get; set; }
public Nullable<int> RedeemUserId { get; set; }
public string RedeemUserName { get; set; }
public string Note { get; set; }
public Nullable<bool> IsRedeemed { get; set; }
使用凭证获取经销商名称

当我打电话的时候

var model = (from v in context.Vouchers orderby v.Id select v);
显示了一个错误

实体类型凭证不是当前上下文模型的一部分


这是什么意思?我如何解决它?

可能您没有在这样的上下文中注册实体:

protected override void OnModelCreating(DbModelBuilder modelBuilder)
        {
            modelBuilder.Entity<Voucher>();
            // need register Reseller as well
        }
模型创建时受保护的覆盖无效(DbModelBuilder modelBuilder)
{
modelBuilder.Entity();
//需要注册经销商以及
}

谷歌搜索OnModelCreating和DbModelBuilder。

在这里检查答案,您需要更新您的模型。右键单击模型图并从类更新。如果您使用代码优先的方法,那么您可能会因为虚拟环境而遇到问题,所以请像
public-Reseller-Reseller{get;set;}
那样编写它,这样应该可以工作。干杯您的模型代码是第一位的吗?就像这样,现在在模型创建(DbModelBuilder modelBuilder){modelBuilder.Entity();modelBuilder.Entity();//需要注册转售商以及抛出新的意外CodeFirstException();}@AhmedNaguib请使用表/列属性、数据库初始值设定项显示整个代码。确保使用正确的连接字符串(正确的服务器和数据库包含所有这些实体)。确保表名与模型中的表属性匹配。
protected override void OnModelCreating(DbModelBuilder modelBuilder)
        {
            modelBuilder.Entity<Voucher>();
            // need register Reseller as well
        }