aspnet - 添加迁移时失败:值不能为null,参数名称:property

时间:2017-09-22 17:47:18

标签: c# .net asp.net-mvc

我已经在网上查找此错误,我无法找到任何有用的信息。我试图在dotnet中使用实体框架创建数据库,但是我收到了这个错误。任何暗示我做错了什么?我想提供代码,但我不知道哪一个。如果有必要,我会在以后更新。现在我只是附上错误。

  

System.ArgumentNullException:值不能为null。   参数名称:property      在Microsoft.EntityFrameworkCore.Utilities.Check.NotNull [T](T值,String parameterName)      在Microsoft.EntityFrameworkCore.Storage.RelationalTypeMapper.FindMapping(IProperty属性)      在Microsoft.EntityFrameworkCore.Migrations.MySqlMigrationsSqlGenerationHelper.ColumnDefinition(String schema,Strin)   g table,String name,Type clrType,String type,Nullable 1 unicode, Nullable 1 maxLength,Boolean rowVersion,Boolean   nullable,Object defaultValue,String defaultValueSql,String computedColumnSql,IAnnotatable annotatable,IModel model   ,MigrationCommandListBuilder构建器)      在Microsoft.EntityFrameworkCore.Migrations.MigrationsSqlGenerator.ColumnDefinition(AddColumnOperation操作,IM   odel model,MigrationCommandListBuilder builder)      在Microsoft.EntityFrameworkCore.Migrations.MigrationsSqlGenerator.Generate(CreateTableOperation操作,IModel m   odel,MigrationCommandListBuilder构建器,布尔终止)      在Microsoft.EntityFrameworkCore.Migrations.MigrationsSqlGenerator.Generate(CreateTableOperation操作,IModel m   odel,MigrationCommandListBuilder builder)      在Microsoft.EntityFrameworkCore.Migrations.MigrationsSqlGenerator.Generate(MigrationOperation操作,IModel mod   el,MigrationCommandListBuilder builder)      在Microsoft.EntityFrameworkCore.Migrations.MigrationsSqlGenerator.Generate(IReadOnlyList`1操作,IModel模型   )      在Microsoft.EntityFrameworkCore.Migrations.Internal.Migrator.GenerateUpSql(迁移迁移)      在Microsoft.EntityFrameworkCore.Migrations.Internal.Migrator.Migrate(String targetMigration)      在Microsoft.EntityFrameworkCore.Design.Internal.MigrationsOperations.UpdateDatabase(String targetMigration,String   contextType)      在Microsoft.EntityFrameworkCore.Design.OperationExecutor.UpdateDatabase。<> c__DisplayClass0_1。< .ctor> b__0()      在Microsoft.EntityFrameworkCore.Design.OperationExecutor.OperationBase.Execute(Action action)   值不能为空。   参数名称:property   重新格式化堆栈跟踪

任何回复都会很棒。非常感谢你。

2 个答案:

答案 0 :(得分:0)

您正在尝试为非null类型的参数/列发送空值。

答案 1 :(得分:0)

谢谢你们帮助我。我现在知道这个问题。它只是表名中的拼写错误。

public DbSet<Account> tblAccount {get;set;}

然后我在迁移代码中写这个

migrationBuilder.CreateTable(
            name: "tblAccounts ",
            columns: table => new ....

对不起,我没有意识到。