才开始接触asp.net c#之类的,遇到很多问题,记录一下.
1.安装vs2015中文版,mysql5.7
这个我选择了全部安装,因为不熟悉,怕万一缺啥不好整.但安装时间真的好长,晚上没有关机,第二天才好,所以一定要有耐心
2.安装mysql-connector-net-6.9.9.msi 和 mysql-for-visualstudio-2.0.5.msi
vs2015支持几个现成的数据库,但可惜不包括mysql,所以需要自己安装,visualstudio应该是插件,装了就可以连接数据库,connector是驱动
3.安装完成检查
工具菜单,右键有个mysql,选中可以看到工具栏多个
4.打开如下面版
右链添加链接,数据源选择
然后按要求填写,就可以看到连接成功了
5.新建一个项目如下
6.在解决方案资源管理器中右键引用
我的电脑是在这个位置D:\Program Files (x86)\Microsoft Visual Studio 14.0\Common7\IDE\PrivateAssemblies,添加MySql.Data.dll引用.
7.创建数据集
8.打开数据集文件,向里面添加一个表,用拖的方式
点击菜单生成-生成解决方案
9.添加一个web窗体
10.向窗体中添加二个控件
分别配置和绑定好数据源
11.运行,就可以看到报错,坑爹的事情发生了
错误1:
有个Entity的错,具体的当时没有截图,大概意思就是实体不兼容的意思,这个可以想像,本来就不是一个窝里的东西不搞个转换说不过去,这个我参考:http://www.cnblogs.com/RushPasser/p/5438334.html 这个人的方法解决了.它是对项目而言安装的.
使用Nuget安装EntityFramework
使用Nuget安装Mysql.Data.Entity
错误2:
mysql Access denied for user 'root'@'localhost' (using password: no)
这个错表面看,是数据库没有密码.但实际不然.数据库是有密码的.然后就想,是不是这个拖过去的表,是不是也应该有个文件记录数据库内容的?兴许里面能看出点门道.果然在web.config文件中,我看到这么个东东,确实没有密码,我加上红色的部分,这个坑爹的玩意就算是过了
<connectionStrings>
<add name="testConnectionString2" connectionString="server=localhost;user id=root;database=test;port=3306;password=123456;persistsecurityinfo=True;allowuservariables=True" providerName="MySql.Data.MySqlClient" />
</connectionStrings>
错误3:
这个是因为web.config中的add name名不一致造成的
<connectionStrings>
<add name="testConnectionString" connectionString="server=localhost;user id=root;database=test;port=3306;password=123456;persistsecurityinfo=True;allowuservariables=True" providerName="MySql.Data.MySqlClient" />
</connectionStrings>
这两个保持一致就好了.
大功告成