Sql server 始终加密和ASP.NET标识

Sql server 始终加密和ASP.NET标识,sql-server,asp.net-identity,sql-server-2016,Sql Server,Asp.net Identity,Sql Server 2016,我想对AspNetUsers表中的UserName列应用AlwaysEncrypted 我有一个数据库种子程序,如果用户不存在,它可以插入一些用户。当我第一次运行应用程序并点击login时,seeder会执行,但它会在这一行崩溃: var result = this.userManager.Create(user, this.pass); 显示以下错误消息: "Operand type clash: nvarchar(256) encrypted with (encryption_type =

我想对AspNetUsers表中的UserName列应用AlwaysEncrypted

我有一个数据库种子程序,如果用户不存在,它可以插入一些用户。当我第一次运行应用程序并点击login时,seeder会执行,但它会在这一行崩溃:

var result = this.userManager.Create(user, this.pass);
显示以下错误消息:

"Operand type clash: nvarchar(256) encrypted with (encryption_type = 'DETERMINISTIC', encryption_algorithm_name = 'AEAD_AES_256_CBC_HMAC_SHA_256', column_encryption_key_name = 'CEK_Auto1', column_encryption_key_database_name = 'TestDb') is incompatible with varchar\r\nStatement(s) could not be prepared."
结果通常会填充类似于“用户名已被使用”的错误,而不是在该行上崩溃

如果我将播种机全部注释掉,它将停止在这一行,而不返回任何内容:

var user = await userManager.FindAsync(model.UserName, model.Password);

要始终加密使用Identity的用户名,是否需要更改任何内容?

您应该使用asp.net-Identity或asp.net-Identity-2标记,而不是两者都使用。您解决过这个问题吗?我遇到了同样的问题您应该使用asp.net-identity或asp.net-identity-2标记,而不是两者都使用。您解决过这个问题吗?我也有同样的问题