[英]Can we use dbCommand and AddInParameter while inserting always encrypted columns
我們有什么辦法可以使用dbCommand和AddInParameter,同時通過.net將總是加密的列插入到表中?
db.AddInParameter(dbCommand,“@ SSN”,DbType.string,SSN);
關於.NET Framework數據提供程序如何處理這個問題 - 如果底層對象是SqlParameter,則沒有什么必須專門做的。
有關此內容的更多詳細信息: 使用始終加密的.NET Framework數據提供程序進行開發
SQL Server的.NET Framework數據提供程序自動檢測並加密以加密列為目標的參數。
我假設您正在使用企業庫。 查看AddInParameter方法 - 它在內部創建一個DbParameter,SqlParamter繼承自DbParameter。 似乎在您的情況下適用相同的規則。
話雖如此,您可能需要重新考慮使用企業庫,而不是直接使用ADO.NET,實體框架或像Dapper這樣的微型ORM。 據我所知,企業庫不是一個活躍的項目/正在維護。
編輯
似乎你可以將SqlParameter傳遞給dbCommand。
示例(未測試)
DatabaseProviderFactory factory = new DatabaseProviderFactory();
Database db = factory.CreateDefault();
var dbCommand = db.GetStoredProcCommand("spINSERT");
SqlParameter p = new SqlParameter("xxxxxx", "yyyyyy") {SqlDbType = SqlDbType.VarChar};
dbCommand.Parameters.Add(p);
db.ExecuteNonQuery(dbCommand);
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.