[英]ASP.NET failing to load SSIS package: Value does not fall within the expected range
[英]SqlConnectionStringBuilder Failing within SSIS package
我在生產中有幾個 SSIS 包,它們使用 SqlConnectionStringBuilder 連接到 SQL Server 數據庫。 這些包在大約 10 天前運行良好,我們沒有對 Prod 進行任何更改。 然后,突然之間,包開始失敗,錯誤是
連接字符串格式無效。 它必須由一個或多個由分號分隔的 x=y 形式的組件組成。
當我嘗試調試腳本任務時,腳本任務總是在以下情況下失敗:
string connstring = Dts.Variables["User::Static"].GetSensitiveValue().ToString();
//MessageBox.Show(connstring);
SqlConnectionStringBuilder builder = new SqlConnectionStringBuilder(connstring);
builder.ConnectTimeout = 1800;
從錯誤消息看來,我傳遞了一個空白的連接字符串,但事實並非如此。 我已將連接字符串硬編碼為靜態變量,以便它不會動態構建(顯然是為了測試和解析目的)。
這種方法有什么替代方法,我還能做些什么來解決這個問題? 任何幫助表示贊賞。
編輯:
進一步挖掘后,我到了它試圖在數據庫上執行存儲過程的地步。
SqlCommand command = new SqlCommand("[dbo].[GetdataALL]", sqlConn);
command.CommandTimeout = 1800;
command.CommandType = CommandType.StoredProcedure;
command.Parameters.AddWithValue("@Columns1", Dts.Variables["User::Columns"].Value.ToString());
command.Parameters.AddWithValue("@Where_ID", Dts.Variables["User::WhereID"].Value.ToString());
command.ExecuteNonQuery();
失敗的可能原因是什么? 謝謝你。
您是否僅在調試時收到此錯誤? 如果是這樣,您需要將保護級別更改為 EncryptSensitiveWithPassword。 檢查 HodgyHodson 的回答。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.