我正在做我的MVC应用程序,我已经完成了一部分(使用Entity Framework),并且工作正常。但是,没有,我得到一个错误:
+ InnerException {"The class 'ClassDeclarationsThsesis.Models.Subject' has no parameterless constructor."} System.Exception {System.InvalidOperationException}
An exception of type 'System.Reflection.TargetInvocationException' occurred in EntityFramework.SqlServer.dll but was not handled in user code
我的课看起来像这样:
public partial class Subject
{
private int v;
private int userid;
public Subject(int v, int userid, string name)
{
this.class_id = v;
this.user_id = userid;
this.name = name;
}
public int class_id { get; set; }
public int user_id { get; set; }
public string name { get; set; }
public virtual Group Group { get; set; }
public virtual Subjects_Users Subjects_Users { get; set; }
public virtual Task Task { get; set; }
}
我该如何解决这个问题?我认为我已经尝试了所有可能的方法,但在这里却找不到任何方法。
另外,我已经从数据库中读取数据并使用它并且可以正常工作。它仅在这种情况下失败(至少到目前为止)。我对此很困惑。
最佳答案
您需要向Subject类添加无参数构造函数:
public partial class Subject
{
private int v;
private int userid;
public Subject()
{
}
public Subject(int v, int userid, string name)
{
this.class_id = v;
this.user_id = userid;
this.name = name;
}
public int class_id { get; set; }
public int user_id { get; set; }
public string name { get; set; }
public virtual Group Group { get; set; }
public virtual Subjects_Users Subjects_Users { get; set; }
public virtual Task Task { get; set; }
}