使用自动增量键插入时出现ormlite错误

wb1gzix0  于 2021-06-25  发布在  Mysql
关注(0)|答案(1)|浏览(366)

我有以下几点
MVC 5 Model :

[Schema("dbo")]
[Alias("map")]
public class Map {
    [PrimaryKey]
    [Alias("id")]
    public int Id { get; set; }

    [Alias("name")]
    public String Name { get; set; }

    //others

}

这个 id 表上的属性是 primary key autoincrement .
我需要你的帮助 Id 执行更新操作,但这会阻止我插入新条目。
这个 update 作品:

var res = dbConnection.Update<Map>(map);

而这个 insert 不会:

var res = dbConnection.Insert<Map>(map, selectIdentity: true);

我有个例外:
当identity\u insert设置为off时,无法在表“map”中插入identity列的显式值。
我能做些什么来解决这个问题?

1u4esq0p

1u4esq0p1#

这个 [AutoIncrement] 属性指示ormlite从插入字段列表中省略属性字段。
因此将其应用于id属性:

[PrimaryKey]
[AutoIncrement]
[Alias("id")]
public int Id { get; set; }

在插入或更新实体时,其值将被忽略。

相关问题