ASP.NET MVC 4和Entity Framework 5.0中的MySQL连接 – 多个DbPr
我有一个ASP.NET应用程序,我想上传到提供
MySQL数据库的主机.我正在使用Visual Studio 2012,.NET 4.5,Entity Framework 5.0,我已经为Visual Studio 1.0.2安装了MySQL.我一直在尝试连接到本地MySQL服务器,但我遇到了一些问题.
起初我在我的项目中引用了版本6.6.5.0的MySql.Data和MySql.Data.Entity.但是当我尝试在包管理器控制台中执行Update-Database时,我收到以下错误: System.DateTime System.Data.Entity.Migrations.Model.InsertHistoryOperation.get_CreatedOn() 这个seems是Entity Framework 5.0和早期版本的Connector / .Net的问题 – Visual Studio的MySQL连接器.由于这个过程是一个发现,遗憾的是我不记得我的项目如何引用MySql.Data和MySql.Data.Entity版本6.6.5.0. 我删除了引用,然后使用NuGet下载并引用版本6.7.4.0中的相同程序集.这解决了我之前收到的错误,但现在Update-Database给出了以下错误: Could not load file or assembly 'MySql.Data,Version=6.6.5.0,Culture=neutral,PublicKeyToken=c5687fc88969c44d' or one of its dependencies. The located assembly's manifest definition does not match the assembly reference. (Exception from HRESULT: 0x80131040) 我通过在我的Web.Config文件中包含一个特定的DbProviderFactory解决了这个问题: <system.data> <DbProviderFactories> <remove invariant="MySql.Data.MySqlClient" /> <add name="MySQL Data Provider" invariant="MySql.Data.MySqlClient" description=".Net Framework Data Provider for MySQL" type="MySql.Data.MySqlClient.MySqlClientFactory,MySql.Data,Version=6.7.4.0,PublicKeyToken=c5687fc88969c44d" /> </DbProviderFactories> </system.data> 如果我省略删除标记,我会收到错误: Column 'InvariantName' is constrained to be unique. Value 'MySql.Data.MySqlClient' is already present. 我认为这意味着我的项目仍然有一个DbProviderFactory服务于MySQL库的6.6.5.0版本.但是当我搜索我的项目的文本文件时,我无法在任何地方找到字符串6.6.5.0. 目前这个解决方案让我连接到我的本地MySQL服务器,但当我将项目发布到我的托管服务提供商并在我的浏览器中访问网站时,我只是收到一条错误消息.我想知道如何删除隐含的6.6.5.0服务DbProviderFactory,这是我学习的一部分,因为我认为我的解决方法可能是我的网站无法在我的托管服务提供商处工作的原因. 作为寻找解决方案的线索,我发现可疑的是,当我尝试添加引用时,我只能看到(6.6.5.0的几个版本): 但是当我去NuGet经理时,我只安装了6.7.4.0版: 希望这可以帮助. 解决方法
我写了一个
blog post on this subject,我的项目可以在本文的底部下载.
我必须安装(如我的文章中所述)MySqlDataEntity -Pre,它安装测试版6.7.2 beta,以获得与EF 5的良好兼容性,但我看到现在当前版本注意到6.7.4,所以我更新了相应的我的项目,它也一样,所以我也更新了项目,从我的博客下载. 希望这可以帮助您从EF和MySql开始. 顺便说一句,如果不清楚,你必须从NuGet,MySql.Data.Entities安装,它也将安装MYSql.Data,因为实体依赖它. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
- asp.net-mvc – 在ajax请求中返回PDF
- asp.net – 如何在MVC3中使用https生成绝对URL?
- asp.net – App_Offline.htm没有导致网站崩溃的可能原因是什
- asp.net – 加密ASP .NET 2.0和SQL Server 2005中的工资值
- asp.net-mvc – 重命名重构在强类型剃刀视图中为某人工作吗
- ASP.NET Core中间件实现分布式 Session
- asp.net-core-2.1 – 配置HttpClientFactory以使用当前请求
- 是否可以在OSX上使用Razor作为独立库(没有任何asp.net业务)
- entity-framework – 数据读取器与指定的模型不兼容
- 有没有办法确保(仅)在HTTPS协议上运行ASP.NET应用程序?
- asp.net – 从SqlMembershipProvider迁移到自定义
- 在UpdatePanel中使用ASP.NET FileUpload控件的问
- asp.net-mvc – 使用ASP.NET MVC中绝对路径访问视
- 运行SonarQube针对ASP.Net核心解决方案/项目
- asp.net-mvc – 通过Web Api接收,发送文件
- 实体框架 – 使用Azure表存储的Code First&I
- asp.net – 检查是否在集成管道模式
- asp.net-mvc – 什么是防伪令牌盐的使用?
- ASP.NET MVC下的四种验证编程方式
- asp.net-mvc – ASP.Net MVC路由策略