【问题标题】:Cannot resolve type Mono.Runtime and Cannot resolve type System.CoreLib requested by System.Data.SQLite无法解析类型 Mono.Runtime 和无法解析 System.Data.SQLite 请求的类型 System.CoreLib
【发布时间】:2020-12-29 11:48:01
【问题描述】:

当我为 SQLite 设置提供程序时:

public class Configuration : DbConfiguration, IDbConnectionFactory
{
    public SqlTypeEnum sqlTypeEnum = SqlTypeEnum.Sql;

    public Configuration()
    {
        SetDefaultConnectionFactory(this);
    }

    public Configuration(SqlTypeEnum sqlTypeEnum)
    {
        this.sqlTypeEnum = sqlTypeEnum;
        SetProviderFactory("System.Data.SQLite", SQLiteFactory.Instance);
        SetProviderFactory("System.Data.SQLite.EF6", SQLiteProviderFactory.Instance);

        var providerServices = (DbProviderServices)SQLiteProviderFactory.Instance.GetService(typeof(DbProviderServices));

        SetProviderServices("System.Data.SQLite", providerServices);
        SetProviderServices("System.Data.SQLite.EF6", providerServices);
        SetDefaultConnectionFactory(this);
    }

    public DbConnection CreateConnection(string connectionString)
    {
        if(sqlTypeEnum == SqlTypeEnum.Sql)
            return new SqlConnection(connectionString);
        else
            return new SQLiteConnection(connectionString);
    }
}

此信息显示在控制台上:

无法解析 System.Data.SQLite 请求的 Mono.Runtime 类型,Version=1.0.113.0,Culture=neutral,PublicKeyToken=db937bc2d44ff139

无法解析 System.Data.SQLite 请求的类型 System.CoreLib,版本=1.0.113.0,Culture=neutral,PublicKeyToken=db937bc2d44ff139

SetProviderFactory("System.Data.SQLite", SQLiteFactory.Instance);之后

不过,一切似乎都运行良好,但我想修复它。

  • .NET v4.5.2
  • 实体框架 v6.4.4

编辑:

最后在我的应用程序中,我加载了其他项目的库,但我直接使用提供者对项目进行了测试,它崩溃了一个错误,表明这个问题:Unable to load DLL 'SQLite.Interop.dll'

但是,这些解决方案都无法解决问题。在我看来,原因可能是加载了库(Assembly)并且我没有附加任何项目。

【问题讨论】:

  • Cannot resolve type Mono.Runtime requested by System.Data.SQLite, Version=1.0.113.0, Culture=neutral, PublicKeyToken=db937bc2d44ff139你确定你使用的是正确的版本?

标签: c# entity-framework


【解决方案1】:

我无法做到信息没有出现。这是库的错误解释目标框架的错误。我已经设置:

<TargetFrameworks>netcoreapp2.2;netcoreapp3.0;net461</TargetFrameworks>

但是在 net461 上运行应用程序。 Mono.Runtime 和 System.CoreLib 不适用于我的框架。

【讨论】:

    猜你喜欢
    • 2015-10-22
    • 2013-12-14
    • 1970-01-01
    • 2012-11-22
    • 2017-07-19
    • 2016-09-24
    • 2014-11-07
    • 2021-08-28
    • 1970-01-01
    相关资源
    最近更新 更多