我在Windows Server 2012上运行了一个MySQL 5.7.20-log服务器。
我创建了两个简单的应用程序:
1。使用6.10.4连接器(NuGet包)
的C#Windows窗体应用程序(.NET) private void Form1_Load(object sender, EventArgs e)
{
TestMySqlConnection();
}
private void TestMySqlConnection()
{
string dbConnectionString =
" Data source = 192.168.0.12;" +
" Database = rcp;" +
" User Id = rcp;" +
" Password = *******;" +
" SslMode = None;";
using (MySqlConnection dbConnection = new MySqlConnection(dbConnectionString))
{
dbConnection.Open();
}
}
此应用程序运行没有问题。
2。通用Windows平台应用程序(UWP /.NetCore)使用6.10.4连接器(NuGet包)
private void Page_Loaded(object sender, RoutedEventArgs e)
{
TestMySqlConnection();
}
private void TestMySqlConnection()
{
string dbConnectionString =
" Data source = 192.168.0.12;" +
" Database = rcp;" +
" User Id = rcp;" +
" Password = *******;" +
" SslMode = None;";
using (MySqlConnection dbConnection = new MySqlConnection(dbConnectionString))
{
dbConnection.Open();
}
}
此应用程序不起作用并抛出Exception
。
例外:
调用目标抛出了异常。
的InnerException:
FileNotFoundException:无法加载文件或程序集“System.Diagnostics.Process,Version = 4.0.0.0,Culture = neutral,PublicKeyToken = b03f5f7f11d50a3a'”。
任何帮助都将不胜感激。
答案 0 :(得分:0)
直接在UWP中连接到MySql数据库是.NET Standard 2.0引入的一项新功能。
对于以前的通用Windows平台,它仅支持.NET Standard 1.4。
所以,这就是你所面临的问题。如果我设置我的项目的目标版本是16299,我也可以在我这边重现它,但是最小版本是以前的版本(15063,14393等)。
要解决此问题,您需要使项目的目标版本和最小版本为16299。