Asp.net mvc 4 MVC4:无法将值NULL插入到列中,但它';它不是空值

Asp.net mvc 4 MVC4:无法将值NULL插入到列中,但它';它不是空值,asp.net-mvc-4,null,Asp.net Mvc 4,Null,希望大家都好,我试图通过“LINQ”向数据库插入一条新记录,但出现了一个问题 型号: [Table("Rate")] public class Item_rate { [Key] public int Id { get; set; } public int Up { get; set; } public int Down { get; set; } public Item_rate(int t, int u, int d) {

希望大家都好,我试图通过“LINQ”向数据库插入一条新记录,但出现了一个问题

型号:

[Table("Rate")]
public class Item_rate
{
    [Key]
    public int Id { get; set; }

    public int Up { get; set; }      
    public int Down { get; set; }

    public Item_rate(int t, int u, int d)
    {
        Id = t;
        Up = u;
        Down = d;
    }
    public Item_rate(int t) { Id = t; }
    public Item_rate() { Id = 1; }
}

public class RRDBContext : DbContext
{       
    public DbSet<Item_rate> itrat { get; set; }
}
在Web.config中:

 add name="RRDBContext " connectionString="Data Source=(LocalDb)\v11.0;AttachDbFilename=C:\Users\Admin\Desktop\Recommender.mdf;Integrated Security=True" providerName="System.Data.SqlClient" 
例外情况:

{“无法将值NULL插入表C:\USERS\ADMIN\DESKTOP\RECOMMENDER.MDF.dbo.Rate”的列“Id”中;列不允许空值。insert失败。\r\n语句已终止。”


您的
Id
字段是否设置为标识?发布
Id
的SQL列定义。它需要自动递增(ms sql中的标识)。然后你所有的
f.Id=y语句需要执行。感谢大家,我将Id设置为identity,并且它可以正常工作:)
 add name="RRDBContext " connectionString="Data Source=(LocalDb)\v11.0;AttachDbFilename=C:\Users\Admin\Desktop\Recommender.mdf;Integrated Security=True" providerName="System.Data.SqlClient"