我正在尋找一種讓我的C#(4.0)應用程序異步發送數據到SQL Server 2008實例的方法。我有點像我在http://nayyeri.net/asynchronous-command-execution-in-net-2-0看到的,但那不是我正在尋找的東西。SQL Server異步執行?
我有這樣的代碼:
// myDataTable is a .NET DataTable object
SqlCommand sc= new SqlCommand("dbo.ExtBegin", conn);
SqlParameter param1 = sc.Parameters.AddWithValue("@param1", "a");
SqlParameter param2 = sc.Parameters.AddWithValue("@param2", "b");
SqlParameter param3 = sc.Parameters.AddWithValue("@param3", myDataTable);
param3.SqlDbType = SqlDbType.Structured;
param3.TypeName = "dbo.MyTableType";
int execState = sc.ExecuteNonQuery();
而且由於myDataTable可能非常大,我不想控制檯應用程序掛起,而它的數據發送到服務器,如果有6個大負荷我希望他們都在同一時間在控制檯應用程序沒有阻塞。我不想連續發送。
所有想法表示感謝,謝謝!
謝謝,我想你只是給了我正確的文字組合給websearch。我還會看看數據庫方面,看看它是否可以在接收存儲過程中實際處理併發呼叫。 Service Broker因爲額外的服務器配置開銷而關閉。我不想添加自定義線程代碼,我認爲BeginExecuteNonQuery可能會爲我做。謝謝。 – Snowy 2011-03-18 20:06:37