首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用实体框架和MySQL db的WPF MVVM应用程序不能在没有安装MySqlConnector的系统上启动

使用实体框架和MySQL db的WPF MVVM应用程序不能在没有安装MySqlConnector的系统上启动
EN

Stack Overflow用户
提问于 2016-12-19 17:02:58
回答 2查看 340关注 0票数 0

刚刚制作了一个简单的WPF MVVM应用程序使用实体框架6与一个MySQL数据库。当我试图在另一台机器上运行它时,它甚至在显示UI之前就崩溃了。

代码语言:javascript
复制
Problem signature:
Problem Event Name: CLR20r3
Problem Signature 01:   credit.exe
Problem Signature 02:   1.0.0.0
Problem Signature 03:   5857d84b
Problem Signature 04:   System.Data
Problem Signature 05:   4.0.30319.18408
Problem Signature 06:   52311175
Problem Signature 07:   9c4
Problem Signature 08:   2b
Problem Signature 09:   System.Windows.Markup.XamlParse
OS Version: 6.1.7601.2.1.0.768.3
Locale ID:  1026
Additional Information 1:   0a9e
Additional Information 2:   0a9e372d3b4ad19135b953a78882e789
Additional Information 3:   0a9e
Additional Information 4:   0a9e372d3b4ad19135b953a78882e789

因此,我用.net 4.5可再发行制作了一个虚拟机,并尝试在没有运气的情况下运行该应用程序。然后,我安装了MySQL连接器.NET 6.9.9 (仅限核心),应用程序现在启动。即使是应用程序文件夹有连接器安装的所有dll文件,如果没有安装,它也无法运行。

我试着在谷歌上搜索这个问题,但在任何地方都找不到。

编辑

所以问题是,为什么应用程序不能在没有安装连接器的情况下启动,即使我删除了程序文件中的mysql文件夹,它也能正常工作?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2016-12-20 08:31:25

已解决:

刚将这段代码添加到我的app.config中,现在它在没有安装连接器的情况下工作。

代码语言:javascript
复制
<system.data>
<DbProviderFactories>
  <remove invariant="System.Data.SQLite" />    
  <remove invariant="MySql.Data.MySqlClient" />
  <add name="SQLite Data Provider" description=".Net Framework Data Provider for SQLite" invariant="System.Data.SQLite" type="System.Data.SQLite.SQLiteFactory, System.Data.SQLite" />
  <add name="MySQL" description="ADO.Net driver for MySQL" invariant="MySql.Data.MySqlClient" type="MySql.Data.MySqlClient.MySqlClientFactory, MySql.Data"/>
</DbProviderFactories>

谢谢,威尔,谢谢你的帮助

票数 1
EN

Stack Overflow用户

发布于 2016-12-19 17:22:37

连接器/网使您可以轻松地开发需要与MySQL安全、高性能数据连接的MySQL应用程序。它实现了所需的ADO.NET接口,并集成到ADO.NET感知工具中。开发人员可以使用他们选择的.NET语言构建应用程序。连接器/网是一个完全托管的ADO.NET驱动程序,用100%纯C#编写。它不使用MySQL C客户机库。

它还实现了从基于.net的应用程序连接到数据库的不同协议。因此,没有连接器,c#应用程序就无法连接到mysql数据库。

举个例子。您没有安装.net框架,您尝试使用所有exe和必需的文件运行windows应用程序。这是行不通的。这里的情况几乎是一样的。

因此,如果不安装连接器,注册表将不会被更新,并且windows将无法连接到mysql。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/41227564

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档