“未能从程序集“Microsoft.VisualStudio.DataDesign.SyncDesigner.DslPackage, Version=9.0.0.0, Culture=neutral...”的解决办法
这几天在用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数据库。
测试目标:探测是否是由于同时安装VS2008和VS2010后引起的该情况。
测试概述:在两个系统下同样用VS2008建立Winform程序,并用Datagridview控件连接Sql Server2005数据库,并显示数据。
首先:在系统①下进行测试。
只安装了vs2008和sqlserver2005.
如下图,可以看到,在选择好[选择您的数据连接]点击下一步后弹出了[选择数据库对象]的对话窗口,然后可以选择表、视图、存储过程、函数等。
如下图,可以看到,数据库中的字段已经显示出来了。
点击[运行]启动程序,可以看到很顺利的连接了数据库。
然后:在系统②下进行测试:
安装了vs2008,vs2010和sqlserver2005。
配置[选择您的数据连接]:
点击[下一步]后,弹出了下面的错误对话框:
可见,vs2008用Datagridview控件连接数据库是失败了。
下面,再在系统②下用vs2010按同样过程测试一下:
建立Winform应用程序:
拖入Datagridview控件并连接数据库:
连接数据库成功后,点击[下一步]弹出了[选择数据库对象]的窗口:
运行程序,正确显示了数据库信息:
综上所述,可见该问题确实跟同时安装vs2008和vs2010有关,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

出处:http://www.cnblogs.com/babycool/
本文首发博客园,版权归作者跟博客园共有。
转载必须保留本段声明,并在页面显著位置给出本文链接,否则保留追究法律责任的权利。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· 单线程的Redis速度为什么快?
· 展开说说关于C#中ORM框架的用法!
· Pantheons:用 TypeScript 打造主流大模型对话的一站式集成库