在mssql数据库中,我有一个名为AutoIncrementNumber的自动递增列 ,使用此配置
protected override void OnModelCreating(ModelBuilder modelBuilder)
{
modelBuilder.Entity<User>(entity =>
{
entity.Property(e =>e.AutoIncrementNumber).ValueGeneratedOnAdd();
}
}
Run Code Online (Sandbox Code Playgroud)
我添加了一个新用户并想要更新此用户
var user = new User { UserName = "SomeUserName", Code=0};
var result = await _userManager.CreateAsync(user, "SomePassword");
//after CreateAsync user.AutoIncrementNumber == 1
if (result.Succeeded)
{
user.Code = 1;
userManager.UpdateAsync(user);
}
Run Code Online (Sandbox Code Playgroud)
但是在UpdateAsync期间遇到了一个错误
DbUpdateException:更新条目时发生错误。有关详细信息,请参见内部异常。SqlException:无法更新标识列“ AutoIncrementNumber”
项目在.net core 1.1下运行
SQL模式
CREATE TABLE [dbo].[AspNetUsers](
[Id] [nvarchar](450) NOT NULL,
[UserName] [nvarchar](256) NULL,
[AutoIncrementNumber] [int] IDENTITY(1,1) NOT NULL,
[ReferralCode] [nvarchar](50) NULL,
CONSTRAINT [PK_AspNetUsers] PRIMARY KEY CLUSTERED (
[Id] ASC …Run Code Online (Sandbox Code Playgroud)