我的 DBML Designer 代码是这样的
[Column(Storage="_id",IsPrimaryKey=true,DbType="Int")]
public System.Nullable<int> id
{
get
{
return this._id;
}
set
{
if ((this._id != value))
{
this._id = value;
}
}
}
和我的 C# 代码
DataClassesDataContext db = new DataClassesDataContext();
userlogin tc = new userlogin();
tc.username = TextBox1.Text;
tc.pass = TextBox2.Text;
db.userlogins.InsertOnSubmit(tc);
db.SubmitChanges();
Response.Redirect("Main.aspx");
当我在文本框中插入数据时出现错误 当 IDENTITY_INSERT 设置为 OFF 时,无法在表“userlogins”中为标识列插入显式值
最佳答案
很可能您的 id
字段是在数据库中自动生成的,而它并没有在代码中标记为这样。将以下属性添加到 Column
属性:
IsDbGenerated=true
或者,如果您为 LINQ 模型使用可视化编辑器,请将此属性标记为自动生成
。
关于c# - 当 IDENTITY_INSERT 设置为 OFF 时,无法在表 'userlogins' 中为标识列插入显式值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17211368/