【问题标题】:Visual Studio 2017 and MySQL EntityFrameworkVisual Studio 2017 和 MySQL EntityFramework
【发布时间】:2017-09-11 20:35:14
【问题描述】:

当添加一个新的ADO.NET Entity Data Model > EF Designer From database > New Connection > Change Connection 我不认为 MySQL 是一个选项;

我已经安装了 NuGet 包 MySQL.Data.Entity(以及所需的 MySql.Data 和 Google.Protobuf)。

此外,当我添加包 MySQL.Data.Entity 时,我现有的 MS SQL 实体返回此错误消息;

System.TypeLoadException: '继承安全规则被违反 类型:'MySql.Data.MySqlClient.MySqlProviderServices'。派生类型 必须要么匹配基本类型的安全可访问性,要么 不太容易接近。'

但在 App.config 中它仍然指向 MS SQL;

<add name="MyDBEntities" connectionString="metadata=res://*/MyEntity.csdl|res://*/MyEntity.ssdl|res://*/MyEntity.msl;provider=System.Data.SqlClient;provider connection string=&quot;data source=MSSQLSERVER;initial catalog=MyDB;persist security info=True;user id=sa;password=MyPassword;MultipleActiveResultSets=True;App=EntityFramework&quot;" providerName="System.Data.EntityClient" />

如果我删除 NuGet 包 MySQL.Data.Entity 并且不进行任何更改,它可以正常工作。

【问题讨论】:

    标签: c# mysql entity-framework


    【解决方案1】:

    我今天解决了同样的错误,卸载所有 MySQL 并重新安装(以相同的顺序):

    并且,在 VS 项目中,使用 Nuget 包管理器进行安装:

    • 1.- 实体框架 v.6.0.0
    • 2.- MySql.Data 和 MySql.Data.Entity v.6.8.8

    我一直在证明另一个版本,但在选择此组合之前从未见过 MySQL 数据源。我希望它对你有用。问候。

    注意:我有 Visual Studio 2017。

    【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-08-27
    • 2019-07-07
    • 2018-10-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多