C# 使用MySql.Data.MySqlClient;它不起作用了
在我使用MS SQL之前,但在一个新项目中,我使用mysql,当我运行我们的应用程序时,我得到了这个错误 编译错误说明:编译过程中发生错误 编译服务此请求所需的资源。请 查看以下特定错误详细信息并修改源 适当地编码 编译器错误消息:CS0246:类型或命名空间名称“MySql” 找不到(是否缺少using指令或程序集 参考?) 源错误:C# 使用MySql.Data.MySqlClient;它不起作用了,c#,mysql,C#,Mysql,在我使用MS SQL之前,但在一个新项目中,我使用mysql,当我运行我们的应用程序时,我得到了这个错误 编译错误说明:编译过程中发生错误 编译服务此请求所需的资源。请 查看以下特定错误详细信息并修改源 适当地编码 编译器错误消息:CS0246:类型或命名空间名称“MySql” 找不到(是否缺少using指令或程序集 参考?) 源错误: Line 4: using System.Text; Line 5: using System.Web; Line 6: `using MySql.Dat
Line 4: using System.Text;
Line 5: using System.Web;
Line 6: `using MySql.Data.MySqlClient; this namespace is not working
Line 7: using System.Data.SqlTypes;
如何解决这个问题?你确定你有吗?你需要添加对MySQL.Data.dll的引用(如果没有,你可以按照Lukasz发布的链接下载)要解决这个问题,请从
然后右键单击项目名称,单击添加引用并在项目解决方案框架中选择MySql.Data.dll文件查找引用文件并右键单击它,然后在菜单上选择“添加引用”,然后单击.NET选项卡,查找MySql.Data并将其添加到引用文件。1)右键单击引用,选择添加引用 2) 选择.NET选项卡。检查选项卡正下方的文本内容,例如:“筛选到:.NET Framework 4客户端配置文件” 3) 单击浏览选项卡 4) 浏览到MySql文件夹并进入Assemblys文件夹,例如: C:\ProgramFiles(x86)\MySQL\Connector NET 6.8.3\Assembly 5) 选择与2)下的文本匹配的版本文件夹,例如:“v4.0” 6) 在Windows7 64位上添加MySql.Data.dll 1) 下载 2) 在文件夹/bin中粘贴MySql.Data.dll的副本 3) 创建数据库和表,例如
CREATE DATABASE my_db ;
USE my_db;
CREATE TABLE `my_users` (
`id` int(11) NOT NULL auto_increment,
`name` varchar(100) NOT NULL default '',
`country` varchar(100) NOT NULL default '',
PRIMARY KEY (`id`));
INSERT INTO `my_users` VALUES (null,'Mark','Canada');
INSERT INTO `my_users` VALUES (null,'Frank','US');
4) 创建以下页面Default.aspx
受保护的无效页面加载(对象发送方、事件参数e)
{
MySqlConnection myConnection=新的MySqlConnection(
“服务器=localhost;用户id=root;密码=zZxX11++;数据库=my_db;池=false;”;
String strSQL=“从我的用户中选择*”;
MySqlDataAdapter myDataAdapter=新的MySqlDataAdapter(strSQL,myConnection);
DataSet myDataSet=新数据集();
Fill(myDataSet,“my_用户”);
MySQLDataGrid.DataSource=myDataSet;
MySQLDataGrid.DataBind();
}
MySQL查询
6) 提取上述内容并将GridView.aspx放在项目文件夹中
7) 运行Default.aspx
8) 输出应为:
表格内容:
idnamecountry
1加拿大马克
兰库斯
您应该下载
因为MySql不在.NETFramework库中,所以如果您在VS上的项目中单击“添加引用”,您将找不到它
下载后,您可以单击“添加引用”将其放入您的项目中。如果您使用的是MySql,则需要添加到对我有用的引用MySql.Data.MySqlClient并使用Mysqlconnection。如果您使用的是Unity Development IDE:
1) 在“参照”上单击鼠标右键,选择“编辑参照”。
2) 确保选中System.Data(在所有选项卡中)和MySQl.Data(在.NET程序集包中)
注意:如果MySQl.Data不存在,请从下载,然后使用资产->导入包->自定义包将其上载到Unity环境
3) 重新打开数据库处理程序文件,清理并重新生成代码。如果仍然存在引用错误,请执行步骤1和步骤2。您可能不需要下载dll,您可能已经拥有了它。
查看->
对象浏览器->.NET
查找MySql.Data
->添加确定
->添加到引用中
要获取MySql.Data.MySqlClient
类或dll
文件,必须先从第三方下载:
那么:
1.单击添加引用
2.单击按钮上的“浏览”按钮
3.转到下载文件的路径。
4.选择dll文件并选择
5.添加该文件作为引用,它将工作在我的例子中,问题是MySql.Data版本。我将其从8.0.20更改为6.10.9(在管理NuGet软件包时),它开始工作。即使您已经使用引用包含MySql连接器,它也可能无法工作。原因是您可能正在旧版本上运行,但安装的连接器与旧版本不兼容。因此,请转到参考->管理Nuget包。
然后在该窗口中搜索mysql.data。然后继续调整版本号,直到它落在兼容的正确版本上 如果是dotnet core 3.0
使用NuGET包管理器添加Mysql.Data包
在appsettings.json中写入连接字符串
例如:
“AllowedHosts”:“*”,
“连接字符串”:{
“默认值”:“服务器=localhost;用户=root;密码=123';数据库=DbName”
}
在Startup.cs文件->在ConfigureServices方法中添加
AddTransient(=>newmysqlconnection(配置[“ConnectionStrings:Default”])
它在我的应用程序中运行良好感谢这项工作也为我节省了时间非常感谢(Visual studio 2012)此处提供的链接已断开…@allexiusw-感谢您的消息。新增链接:)
<%@ Page Language="C#" Debug="true" %>
<%@ import Namespace="System.Data" %>
<%@ import Namespace="MySql.Data.MySqlClient" %>
<script runat="server">
protected void Page_Load(Object sender, EventArgs e)
{
MySqlConnection myConnection = new MySqlConnection(
"server=localhost; user id=root; password=zZxX11++; database=my_db; pooling=false;");
String strSQL = "SELECT * FROM my_users;";
MySqlDataAdapter myDataAdapter = new MySqlDataAdapter(strSQL, myConnection);
DataSet myDataSet = new DataSet();
myDataAdapter.Fill(myDataSet, "my_users");
MySQLDataGrid.DataSource = myDataSet;
MySQLDataGrid.DataBind();
}
</script>
<html>
<head>
<title>MySQL Query</title>
</head>
<body>
<form runat="server">
<asp:DataGrid id="MySQLDataGrid" runat="server"></asp:DataGrid>
</form>
</body>
</html>
<table cellspacing="0" rules="all" border="1" id="MySQLDataGrid" style="border-collapse:collapse;">
<tbody><tr>
<td>id</td><td>name</td><td>country</td>
</tr><tr>
<td>1</td><td>Mark</td><td>Canada</td>
</tr><tr>
<td>2</td><td>Frank</td><td>US</td>
</tr>
</tbody></table>