我有一个已经运行了很长时间的 Windows 窗体应用程序,现在我必须加密/解密数据库中的某些列。我在我的数据库上进行了所有配置,将我的列配置为加密,将列的数据类型更改为nvarchar(max)
from varchar(max)
,在 Windows 商店创建证书,为客户端导出证书,现在我正在尝试在客户端完成这项工作。
我将 Windows 窗体应用程序框架更改为 4.6,添加Column Encryption Setting=enabled
到我的连接字符串,更新了.dbml
设计器,但尝试插入值时仍然出现以下错误:
操作数类型冲突:varchar(8000) 使用 (encryption_type = 'DETERMINISTIC', encryption_algorithm_name = 'AEAD_AES_256_CBC_HMAC_SHA_256', column_encryption_key_name = 'CEK_Auto1', column_encryption_key_database_name = 'MCM_V2') collation_name = 'Greek_CI_AS' 与 varchar(0) 不兼容encryption_type = 'DETERMINISTIC',encryption_algorithm_name = 'AEAD_AES_256_CBC_HMAC_SHA_256',column_encryption_key_name = 'CEK_Auto1',column_encryption_key_database_name = 'mydb') collation_name = 'Greek_BIN2'
我正在使用 Linq 进行查询