2011-11-05 87 views

回答

3

您可以檢查ConnectionString屬性是否存在MultipleActiveResultSets屬性,如果存在,請確保將其設置爲true。

根據您的代碼使用情況,您還可以檢查SqlConnection.ServerVersion屬性以檢查MARS支持。主數應該大於等於9.(SQL Server 2005及更高版本)。如果您的代碼在不同的SQL服務器版本上使用,這將非常有用。

SqlConnectionStringBuilder也可以用於反向(也許是一個奇怪的想法),它有一個MultipleActiveResultSets屬性。

+0

好的手動解析:)任何其他的想法? – Softlion

+1

@Softion不是手動的 - 你可以使用SqlConnectionStringBuilder將它解析成鍵/值對 –

+1

你只需檢查MultipleActiveResultSets鍵 –

1

如果檢查連接字符串(最佳選項,IMO)沒有吸引力......也許故意欺騙需要MARS的東西,例如打開兩行數據讀取器,讀取其中一行,然後(不關閉閱讀器)請求另一個基於閱讀器的查詢。

請注意,緩衝可能會影響到這一點,但值得一試...

相關問題