c# - 当 IDENTITY_INSERT 设置为 OFF 时,无法在表 'userlogins' 中为标识列插入显式值?

标签 c# asp.net linq linq-to-sql

我的 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/

相关文章:

c# - System.Window.Forms.CheckBox 数据绑定(bind)不会被命中

c# - Metro 风格应用程序中缺少 .NET 功能?

c# - 在我的网站上编辑图片后如何清除图片缓存?

c# - 您如何知道 PayPal 购物车何时被遗弃?

c# - LINQ 表达式返回 null

c# - 项目设置中缺少 Visual Studio 2017 包选项卡

c# - 使用 block 从内部返回是否可以

c# - 安装shield引用的项目dll

c# - LINQ 中的隐式转换错误

asp.net-mvc - MVC LINQ to SQL 表连接记录显示