2013-11-21 51 views
0

我想要做一个插入使用LINQ到SQL,但我得到以下错误 附加信息:不能插入NULL值列'UserID',表'Itiss_Request.dbo.Users';列不允许有空值。 INSERT失败。LINQ到SQL错误插入值

UserID表是pk aswel身份已被设置为自动增量。 该数据库有4个字段。

 DataClasses1DataContext dt = new DataClasses1DataContext(); 
     User usr = new User(); 
     usr.MudID = a[1]; 
     usr.Email = Session["email"].ToString(); 
     usr.Name = Session["userName"].ToString(); 


     dt.Users.InsertOnSubmit(usr); 

     dt.SubmitChanges(); 

这是从我的背景文件

[全球:: System.Data.Linq.Mapping.ColumnAttribute(寄存= “_用户名”,自动同步= AutoSync.OnInsert,的DbType =“诠释NOT NULL IDENTITY“,IsPrimaryKey = true,IsDbGenerated = true)] public int UserID { get { return this._UserID; } set if((this._UserID!= value)) { this.OnUserIDChanging(value); this.SendPropertyChanging(); this._UserID = value; this.SendPropertyChanged(“UserID”); this.OnUserIDChanged(); }} }

回答

0

请试试这个...

DataClasses1DataContext dt = new DataClasses1DataContext(); 
    User usr = new User(); 
    usr.MudID = a[1]; 
    usr.Email = Session["email"].ToString(); 
    usr.Name = Session["userName"].ToString(); 
    dt.Users.AddObject(usr); 
    dt.SaveChanges();