你已经有一个可用的连接
本文关键字:连接 有一个 | 更新日期: 2023-09-27 18:01:50
我对Visual Studio 2013相当有经验,我现在正在升级到VS 2015,并遇到并发布添加新数据源到Windows窗体应用程序。很容易重现我的问题。
这是我的设置:
Visual Studio 2015 Enterprise 2015 Update 3
MySQL for Visual Studio 1.2.6
Connector/Net 6.9.9
注意:上述配置是根据位于http://dev.mysql.com/doc/visual-studio/en/visual-studio-install.html的支持信息矩阵支持的,我也尝试了那里列出的支持软件的几乎所有其他排列。
下面是如何重新创建这个问题:
新的c# Windows窗体应用程序
添加新数据源
数据库
数据集
新建连接(连接正常)
保存连接
选择数据库对象
选择任意表
完成
错误:一些更新命令不能自动生成。数据库返回以下错误:你已经有可用的连接了。
感谢任何能给我提示我可能做错了什么的人。
- Install
mysql-for-visualstudio-2.0.4.msi
(here). - Install
Connector/Net 6.9.9.msi
(here).
这是我找到的解决方案。当我进一步研究时,我发现某些东西(我不知道是什么)期待Connector/net 6.9.9,而另一些东西(我也不知道是什么)期待Connector/net 6.9.8。在我的项目或安装中没有任何东西应该参考6.9.8。无论如何,我安装了6.9.8,从那以后一切都运行得很好。
在过去的24小时里,我一直在纠结这个问题。
第一个问题:你有没有从VS中删除任何项目文件?我去了回收站,从我删除的VS中恢复了所有的东西。
这解决了问题。确保所有来自VS的数据连接都已恢复。
如果不行,告诉我。
我尝试了上面提到的几乎所有的解决方案都失败了,最后我所做的是
- 通过右键单击项目手动创建数据集并添加新数据集。
- 然后在其中创建DataTable,所有列在查询中相同。
- 您可以在rdlc报告中看到报告数据菜单。在下面你可以看到数据集,你可以把数据表列拖放到rdlc报告。
-
在后台你可以这样写
var ds = this.GetData(); var dt = ds.Tables[0]; ReportViewer1.Reset(); ReportViewer1.LocalReport.ReportPath = Server.MapPath("Report1.rdlc"); ReportViewer1.LocalReport.DataSources.Add(new ReportDataSource("DataSet2", dt)); // same name as dataset created under report data menu ReportViewer1.DataBind(); ReportViewer1.LocalReport.Refresh();
按以下步骤操作:
- 卸载MySQL Connector/NET
- 重新安装MySQL Connector/NET