2010-08-16 39 views
1

我有一個內部使用的Winform應用程序,我通過ClickOnce發佈了SQL Express 2005.該應用程序還引用了幾個Microsoft.SqlServer dll。我想弄清楚特定版本設置是如何工作的。我在我的機器上安裝了SQL 2008,他們有2005.Visual Studio參考資料:特定版本設置問題

如果我選擇Specific Version = false它會關心用戶具有SQL 2005還是依賴於dll。

具體來說,如果我沒有指定Specific Version這是否意味着它只會在GAC中查找該dll的任何版本?

回答

3

「特定版本」僅在您編譯時相關,它在運行時不起作用。當設置爲False時,當引用程序集的[AssemblyVersion]已更改時,IDE不會投訴。這不是一個好主意,你應該知道你可能需要在代碼中進行更改,因爲程序集已更改。

CLR不會在GAC中查找任何版本的程序集。只接受完全匹配。這是默認策略,您可以在應用程序的.config文件中使用<bindingRedirect>覆蓋它。

Afaik,沒有針對SQL Server版本號的SQL Server提供程序。不太確定。

1

MSFT中與SQLExpress產品相關的人今天告訴我,很難確定它是否已安裝,他們有一個程序,它是Visual Studio中引導程序包的一部分。 (我對他的安裝SQLServer有多麼困難。)

在.NET應用程序中編寫代碼以連接並使用SQLServer數據庫不是特定於版本的,Microsoft致力於保持向後兼容性。

相關問題