Gra*_*per 2 c# xsd dataset visual-studio-2010 linq-to-sql
今天早上我通过设计器从 Linq to SQL DBML 文件中删除了一个表。进行多项更改后,我尝试将表添加回 DBML 设计器界面,但 Visual Studio 没有执行任何操作。当我尝试从服务器资源管理器中的列表中拖动表时,我没有看到指示它正在尝试拖放操作的箭头。我尝试将其他几个表从服务器资源管理器拖到设计器中,但无济于事。我没有收到错误。
我还尝试更新驻留在同一解决方案中的另一个项目中的数据集,并且得到相同的结果。Visual Studio 2010 不允许我将表从服务器资源管理器拖动到 XSD 或 DBML 文件的设计器界面。
到目前为止我已经尝试过以下操作
1) Close all windows in VS
2) Restart VS
3) Restart PC
4) Revert DBML to earlier versions
Run Code Online (Sandbox Code Playgroud)
有什么建议么?这在周五工作得很好,我没有改变框架中的任何重要内容。
也尝试了以下两件事:删除用户选项文件并重新启动 VS 并使用 DataSet 创建新项目并尝试从服务器资源管理器中拖动表。两者都失败了。
好吧,我终于解决了这个问题。
问题似乎出在 Visual Database Tools DLL 上。
该DLL文件是由VS 2010安装时安装的,但在SQL Server 2012安装期间,它将升级到SQL 2012版本的工具。此后,卸载并重新安装 SQL 或 VS 将不会删除此较新的 DLL 以允许安装旧版本,因此会留下这个恼人的问题。
我的修复方法是设置一个干净的虚拟机并安装 VS 2010,然后从我的虚拟机中取出这个原始 DLL 并覆盖我的实时计算机上的 DLL。就那么简单。
我认为删除此 DLL 文件然后执行 VS 2010 修复或卸载/重新安装也可以解决问题。
DLL 的目录和文件名(在 X64 计算机上)为:C:\Program Files (x86)\Common Files\microsoft shared\Visual Database Tools\dsref80.dll
我希望这可以帮助其他人避免痛苦!