我使用MySQL 连接器/网络 通过引用程序集 (MySql.Data.dll) 并将连接字符串传递给MySqlConnection
. 我喜欢这样,因为我不需要安装任何东西。
有没有什么方法可以在 Visual Studio 2010 中“选择数据源”而无需安装任何东西?
如何让 MySQL 选项 (localhost) 显示在这些列表之一中?还是我必须安装一些东西?
(我不想使用 ODBC 顺便说一句)
服务器资源管理器中的“添加连接”:
实体数据模型向导:
我使用MySQL 连接器/网络 通过引用程序集 (MySql.Data.dll) 并将连接字符串传递给MySqlConnection
. 我喜欢这样,因为我不需要安装任何东西。
有没有什么方法可以在 Visual Studio 2010 中“选择数据源”而无需安装任何东西?
如何让 MySQL 选项 (localhost) 显示在这些列表之一中?还是我必须安装一些东西?
(我不想使用 ODBC 顺便说一句)
服务器资源管理器中的“添加连接”:
实体数据模型向导:
安装这里的 MySQL .NET 连接器http://dev.mysql.com/downloads/connector/net/
“从 6.7 版开始,Connector/Net 将不再包含 MySQL for Visual Studio 集成。该功能现在可在名为 MySQL for Visual Studio 的单独产品中使用,可使用 MySQL Installer for Windows。”
经过大量搜索并尝试了许多解决方案,我终于得到了它:
卸载连接器
从控制面板卸载 MySQL for Visual Studio
根据下表重新安装它们
将程序集文件从复制C:\Program Files (x86)\MySQL\MySQL Connector Net 6.9.8\Assemblies\v4.5
到C:\Program Files (x86)\Microsoft Visual Studio 12.0\Common7\IDE
注销并重新打开您的解决方案
请享用
这似乎是一个普遍的问题。我必须卸载最新的 Connector/NET 驱动程序 (6.7.4) 并安装旧版本 (6.6.5) 才能正常工作。其他人报告 6.6.6 为他们工作。
请参阅其他主题以获取更多信息:MySQL 数据源未出现在 Visual Studio 中
您可以从此处的备用下载中安装它,它应该已与 VS 正确集成,但它没有,我收到一个奇怪的错误,重新安装后就可以了。
Visual Studio 要求在安装期间通过在 Windows 注册表中添加某些条目来注册 DDEX 提供程序(数据设计器可扩展性) ( HKLM\SOFTWARE\Microsoft\VisualStudio\{version}\DataProviders
)。有关详细信息,请参阅MSDN 中的DDEX 提供程序注册。
安装以下软件包:
将MySQL 数据库添加到数据源列表 (Visual Studio 2017)
查看图片我的 vs 2013 在 64 位机器上遇到了同样的问题。所以我尝试下载VS 的 MySql 扩展并将其安装在我的机器上。并重新启动 vs。
为了在“选择数据源”窗口中获取MySQL 数据库项,应该安装MySQL for Visual Studio包(今天的最后一个版本是1.2.6):
右键单击解决方案资源管理器中的项目,然后单击管理 NuGet 包
搜索 MySql.Data 包,找到后点击安装
这是使用 mysql 包连接到 MySql 数据库的示例控制器。我们主要使用 MySqlConnection 连接对象。
public class HomeController : Controller
{
public ActionResult Index()
{
List<employeemodel> employees = new List<employeemodel>();
string constr = ConfigurationManager.ConnectionStrings["ConString"].ConnectionString;
using (MySqlConnection con = new MySqlConnection(constr))
{
string query = "SELECT EmployeeId, Name, Country FROM Employees";
using (MySqlCommand cmd = new MySqlCommand(query))
{
cmd.Connection = con;
con.Open();
using (MySqlDataReader sdr = cmd.ExecuteReader())
{
while (sdr.Read())
{
employees.Add(new EmployeeModel
{
EmployeeId = Convert.ToInt32(sdr["EmployeeId"]),
Name = sdr["Name"].ToString(),
Country = sdr["Country"].ToString()
});
}
}
con.Close();
}
}
return View(employees);
}
}
不幸的是,Visual Studio 的内置工具不支持此功能。但是,您可以使用 mysql 连接器创建自己的数据提供程序,但仍然必须从代码中集成它