EF Core 3.1迁移无法与npgsql和nodatime配合使用

时间:2020-07-17 04:50:01

标签: npgsql asp.net-core-3.1 ef-core-3.1 nodatime

任何人都知道导致此异常的原因是什么?具有asp.net core 3.1和基础结构库.netstandard2.1。使用nodatime设置npgsql。遵循他们的指示,但是在运行添加迁移时,我感到很讨厌,不确定为什么吗?

访问Microsoft.Extensions.Hosting时发生错误 服务。没有应用程序服务提供商就可以继续。错误: 某些服务无法构建(验证时出错 服务描述符'ServiceType: Microsoft.EntityFrameworkCore.Storage.IRelationalTypeMappingSourcePlugin 生命周期:单例实施类型: Npgsql.EntityFrameworkCore.PostgreSQL.Storage.Internal.NpgsqlNodaTimeTypeMappingSourcePlugin': 无法解析服务类型 “ Microsoft.EntityFrameworkCore.Storage.ISqlGenerationHelper”时 试图激活 'Npgsql.EntityFrameworkCore.PostgreSQL.Storage.Internal.NpgsqlNodaTimeTypeMappingSourcePlugin'。) (验证服务描述符'ServiceType时出错: Microsoft.EntityFrameworkCore.Query.IMethodCallTranslatorPlugin 生命周期:单例实施类型: Npgsql.EntityFrameworkCore.PostgreSQL.NodaTime.NpgsqlNodaTimeMethodCallTranslatorPlugin': 无法解析服务类型 'Microsoft.EntityFrameworkCore.Query.ISqlExpressionFactory'而 试图激活 'Npgsql.EntityFrameworkCore.PostgreSQL.NodaTime.NpgsqlNodaTimeMethodCallTranslatorPlugin'。) (验证服务描述符'ServiceType时出错: Microsoft.EntityFrameworkCore.Query.IMemberTranslatorPlugin生命周期: 单例实施类型: Npgsql.EntityFrameworkCore.PostgreSQL.NodaTime.NpgsqlNodaTimeMemberTranslatorPlugin': 无法解析服务类型 'Microsoft.EntityFrameworkCore.Query.ISqlExpressionFactory'而 试图激活 'Npgsql.EntityFrameworkCore.PostgreSQL.NodaTime.NpgsqlNodaTimeMemberTranslatorPlugin'。)

1 个答案:

答案 0 :(得分:0)

那是我的坏事。在startup.cs中忘记了以下语句。可以在ConfigureServices方法中的任何位置设置它们

public void ConfigureServices(IServiceCollection services)
{
     ...

     services.AddEntityFrameworkNpgsql();
     services.AddEntityFrameworkNpgsqlNodaTime();

     ...
}