2013-05-20 73 views
1

我有問題標題中描述的問題。VS 2012 - 無法將MySQL.Data庫添加到我的WP7 C#項目

我不明白究竟是什麼原因在Visual Studio 2012 Express(在Windows上)中,Nuget無法將MySQL.Data框架庫添加到我的項目(Silverlight v4.0/C#目標Windows Phone 7.1) 8 Pro x64)。我也嘗試手動添加官方MySQL站點(6.5和更新版本)下載的.dll文件,但未成功。

它表示該包不包含對與(MySQL.Data)框架兼容的程序集或數據文件的某些引用。

任何想法如何解決這個問題?

PS:它給我同樣的錯誤,當我嘗試安裝Nuget.Core包,我不知道這是否是一個腐敗的NuGet經理的症狀...

+0

由於Silverlight/Windows Phone具有非常有限的一組.NET框架功能,因此MySQL.Data很可能取決於該平臺不可用的功能。同樣適用於NuGet.Core。 – jessehouwing

+0

但我不明白爲什麼只有這個軟件包無法安裝...我用我的實際項目沒有任何問題的其他軟件包 –

+0

如果你看看軟件包目錄,這些軟件包是否帶有SL4文件夾?每個軟件包必須明確支持您選擇的框架,否則將不會安裝。 System.Data通常不受Windows Phone支持。甚至沒有SqlClient。這是設計。您需要通過向其提供Web服務來公開您的數據庫。 – jessehouwing

回答

1

的MySQL.Data軟件包依賴System.Data庫創建一個直接連接到你的數據庫的連接。 Windows Phone庫不支持直接數據庫連接,因爲它需要您的手機連接到您的數據庫並建立有狀態的連接。這些連接類型很脆弱,維護成本很高。

當您瀏覽您的packages\**library**\Lib文件夾時,您會看到每個受支持平臺的二進制文件。例如,HTMLAgilityPack包括sl4-windowsphone71,因此得到支持。該MySQL.Data沒有,因此不支持: Difference between support of framework versions

相反,你將需要公開,可以通過你的Windows Phone應用程序在一個無狀態的方式被消耗掉一個Web服務(XML或JSON爲例)。

+0

非常感謝,現在我明白了,我會按照你的方法! –

相關問題