我正在尝试学习MVC3。我正在尝试将用户添加到数据库。
db.U1_Users.Add(u1_Users);
db.SaveChanges();
进入保存时发生错误。 我这是添加功能的问题。
我收到错误
InnerException = {"Cannot insert the value NULL into column 'U1_UserID', table
'Admin.dbo.U1_User'; column does not allow nulls. INSERT fails.\r\nThe statement has been terminated."}
修改
U1_UserID是主键。
这是模型:
public class U1_User
{
public int U1_UserID { get; set; }
public string U1_UserName {get;set;}
}
答案 0 :(得分:0)
看起来很直接。您需要确保设置该值。如果您希望这是一个自动编号,那么您需要在数据库上设置它。
在SQL SERVER中,您可以在设计模式下打开表,转到表属性并选择列作为标识列。此外,您应该将该字段设为主键。
答案 1 :(得分:0)
这种情况会导致您的id属性错误。
命名惯例是:
public int Id { get; set; }
或
public int YourModelNameId { get; set; }
如果要映射到现有数据库,请查看ScottGu博客帖子中的modelBuilder: http://weblogs.asp.net/scottgu/archive/2010/07/23/entity-framework-4-code-first-custom-database-schema-mapping.aspx
以下内容可行:
public class U1_Users
{
[Key]
public int U1_UsersID { get; set; }
public string U1_UserName { get; set; }
}
答案 2 :(得分:0)
所需..
[Required, Key, DatabaseGenerated(DatabaseGeneratedOption.None)]