錯誤信息: 未能從程序集“Microsoft.VisualStudio.DataDesign.

這幾天在用winform編寫一個小軟件需要連接數據庫,用到了Datagridview控件,但在根據[數據源配置嚮導]連接至數據庫時卻彈出了下面的錯誤信息:

圖片:


---------------------------

嚮導窗體

---------------------------

發生錯誤。

錯誤信息: 未能從程序集“Microsoft.VisualStudio.DataDesign.SyncDesigner.DslPackage, Version=9.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a”中加載類型“Microsoft.VisualStudio.DataDesign.SyncDesigner.SyncFacade.SyncManager”。

---------------------------


從網上找尋了一下解決辦法,親測後整理於此,希望能幫到那些遇到同樣問題的朋友們。

方法一:C:\Program Files\Microsoft Visual Studio 9.0\Common7\IDE目錄下的Microsoft.VisualStudio.DataDesign.SyncDesigner.DslPackage.dll版本過舊,找其他機器中的新版本dll覆蓋即可。

方法二:安裝VS2008SP1補丁文件。


先說明一下我電腦的配置,我的電腦是Windows XP sp3系統,安裝的是VS2008專業版,VS2010中文旗艦版,用的SQL Server 2005的數據庫。

爲了測試,我在兩臺Windows XP sp3系統虛擬機下,

系統①只安裝了VS2008專業版和Sql Server 2005數據庫;

系統②安裝了VS2008專業版,VS2010中文旗艦版和Sql Server2005數據庫。


點擊[運行]啓動程序,可以看到很順利的連接了數據庫。



然後:在系統②下進行測試:

安裝了vs2008vs2010sqlserver2005


配置[選擇您的數據連接]


點擊[下一步]後,彈出了下面的錯誤對話框:



可見,vs2008Datagridview控件連接數據庫是失敗了。


下面,再在系統②下用vs2010按同樣過程測試一下:


建立Winform應用程序:


拖入Datagridview控件並連接數據庫:


連接數據庫成功後,點擊[下一步]彈出了[選擇數據庫對象]的窗口:

運行程序,正確顯示了數據庫信息:


綜上所述,可見該問題確實跟同時安裝vs2008vs2010有關,vs2008中的部分文件受到了vs2010的影響。


解決辦法:

方法一:

是你的Microsoft.VisualStudio.DataDesign.SyncDesigner.DslPackage.dll版本過舊。找其他機器中的新版本dll覆蓋即可。

路徑: C:\Program Files\Microsoft Visual Studio 9.0\Common7\IDE


該方法本人未測試,因爲我電腦上所裝的vs2008和虛擬機中的都是一個版本,如下圖:

這是系統①下的:


這是系統②下的:


可見,兩個文件的創建時間、大小等都是一樣的。

也考慮過將vs2010下的該文件拷貝過來,但擔心不同版本引起軟件崩潰則沒有進行測試。

一個版本是9.0.21022.8,另一個版本是10.0.30319.1

至於從vs2008其他版本中拷貝同一個文件過來則沒有進行進一步的測試。


重點說明方法二:

升級vs2008,安裝vs2008sp1補丁。

從微軟官網下載sp1補丁,安裝:

裝過程等待完成就可以,安裝完成後查看vs2008的版本及.net framework版本:


然後再次連接數據庫,可見,[選擇數據庫對象]的對話框可以彈出了:



行程序,連接數據庫正常:


附:vs2008sp1下載地址:

http://www.microsoft.com/downloads/zh-cn/details.aspx?FamilyID=27673c47-b3b5-4c67-bd99-84e525b5ce61


本人蔘考以下網文:http://blog.csdn.net/dantengmiaomi/article/details/6857781


測試目標:探測是否是由於同時安裝VS2008VS2010後引起的該情況。

測試概述:在兩個系統下同樣用VS2008建立Winform程序,並用Datagridview控件連接Sql Server2005數據庫,並顯示數據。


首先:在系統①下進行測試。

只安裝了vs2008sqlserver2005.


如下圖,可以看到,在選擇好[選擇您的數據連接]點擊下一步後彈出了[選擇數據庫對象]的對話窗口,然後可以選擇表、視圖、存儲過程、函數等。



如下圖,可以看到,數據庫中的字段已經顯示出來了


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章