Add-Migration Value cannot be null. Parameter name: language

社会主义新天地 提交于 2019-12-08 20:21:23

问题


I am trying to create a new migration but I get an System.ArgumentNullException saying:

System.ArgumentNullException: Value cannot be null.
Parameter name: language
    at Microsoft.EntityFrameworkCore.Utilities.Check.NotNull[T](T value, 
    String parameterName)
    at Microsoft.EntityFrameworkCore.Design.Internal.MigrationsOperations..ctor
    (IOperationReporter reporter, Assembly assembly, Assembly 
    startupAssembly, String projectDir, String rootNamespace, String 
    language)
    at Microsoft.EntityFrameworkCore.Design.OperationExecutor.<>c__DisplayClass4_0.<.ct
    or>b__4()
    at Microsoft.EntityFrameworkCore.Internal.LazyRef`1.get_Value()
    at Microsoft.EntityFrameworkCore.Design.OperationExecutor.AddMigrationImpl(String name, String outputDir, String contextType)
    at Microsoft.EntityFrameworkCore.Design.OperationExecutor.OperationBase.<>c__DisplayClass3_0`1.<Execute>b__0()
    at Microsoft.EntityFrameworkCore.Design.OperationExecutor.OperationBase.Execute(Action action)
Value cannot be null.
Parameter name: language

回答1:


It's related to the EF Core not EF6, it looks like there is a bug in the 2.1.0.preview1-final version.

  • Check the version you are running with dotnet ef --version
  • Downgrade to the Microsoft.EntityFrameworkCore.Design 2.0.1 version.



回答2:


This is issue #11075. The version of your tool doesn't match the version of your runtime. Ensure you've updated every Microsoft.EntityFrameworkCore package to 2.1.0-preview1-final.




回答3:


For EF Core for .NET Core 2.0.1 in VS 2017 Version 15.7.1, I removed DotNetCliToolReference element from my project file.




回答4:


I think this is a bug.
I'm using EF Core 2.2.4, i'm trying to rollback a migration with:

migrationBuilder.DropIndex(name: "myIndexName");

This was auto-generated for me by EF.
The method signature says name is the only required parameter (there's 2 optional ones after). When i run this i get this:

System.ArgumentNullException: Value cannot be null.
Parameter name: name

but if i add a second parameter for the table name it works:

migrationBuilder.DropIndex(
                name: "myIndexName",
                table: "myTableName");


来源:https://stackoverflow.com/questions/49148464/add-migration-value-cannot-be-null-parameter-name-language

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!