0

嗨,我在 .Net Core 应用程序中通过包管理器控制台编写更新数据库命令时出错。我编写了 Update-Database,PMC 使用了 Update-Datebase。

PM>更新-数据库

System.ArgumentException:不支持关键字:'datebase'。在 Microsoft.Data.Common.DbConnectionOptions..ctor(String connectionString, Dictionary 2.b__0(DbContext c, TState s) 在 Microsoft.EntityFrameworkCore.SqlServer的 Microsoft.Data.Common.DbConnectionOptions.ParseInternal(Dictionary 2 parsetable, String connectionString, Boolean buildChain, Dictionary2 synonyms, Boolean firstKey) 2 synonyms) at Microsoft.Data.SqlClient.SqlConnectionString..ctor(String connectionString) at Microsoft.Data.SqlClient.SqlConnectionFactory.CreateConnectionOptions(String connectionString, DbConnectionOptions previous) at Microsoft.Data.ProviderBase.DbConnectionFactory.GetConnectionPoolGroup(DbConnectionPoolKey key, DbConnectionPoolGroupOptions poolOptions, DbConnectionOptions& userConnectionOptions) at Microsoft.Data.SqlClient.SqlConnection.ConnectionString_Set(DbConnectionPoolKey key) at Microsoft.Data.SqlClient.SqlConnection.set_ConnectionString(String value) at Microsoft.Data.SqlClient.SqlConnection..ctor(String connectionString) at Microsoft.EntityFrameworkCore.SqlServer.Storage.Internal.SqlServerConnection.CreateDbConnection() at Microsoft.EntityFrameworkCore.Storage.RelationalConnection.get_DbConnection() at Microsoft.EntityFrameworkCore.Storage.RelationalConnection.Open(Boolean errorsExpected) at Microsoft.EntityFrameworkCore.SqlServer.Storage.Internal.SqlServerDatabaseCreator.<>c__DisplayClass18_0.<Exists>b__0(DateTime giveUp) at Microsoft.EntityFrameworkCore.ExecutionStrategyExtensions.<>c__DisplayClass12_0.Storage.Internal.SqlServerExecutionStrategy.Execute[TState,TResult](TState state, Func 3 operation, Func3 verifySucceeded) at Microsoft.EntityFrameworkCore.ExecutionStrategyExtensions.Execute[TState,TResult](IExecutionStrategy strategy, Func2 operation, Func2 verifySucceeded, TState state) at Microsoft.EntityFrameworkCore.ExecutionStrategyExtensions.Execute[TState,TResult](IExecutionStrategy strategy, TState state, Func`2 operation) at Microsoft.EntityFrameworkCore.SqlServer.Storage.Internal.SqlServerDatabaseCreator.Exists(Boolean retryOnNotExists) at Microsoft.EntityFrameworkCore.SqlServer.Storage.Internal.SqlServerDatabaseCreator.Exists() 在 Microsoft.EntityFrameworkCore.Migrations.HistoryRepository.Exists() 在 Microsoft.EntityFrameworkCore.Migrations.Internal.Migrator.Migrate(String targetMigration) 在 Microsoft.EntityFrameworkCore.Design。 Microsoft.EntityFrameworkCore.Design.OperationExecutor.UpdateDatabaseImpl(String targetMigration, String contextType) 中的 Internal.MigrationsOperations.UpdateDatabase(String targetMigration, String contextType)。Microsoft.EntityFrameworkCore.Design.OperationExecutor.OperationBase.Execute 上的 Design.OperationExecutor.UpdateDatabase.<>c__DisplayClass0_0.<.ctor>b__0()(操作动作)

不支持关键字:'datebase'。

4

1 回答 1

0

这是因为 Appsettings.json 中定义的连接字符串中的错字。要在 .NetCore 中定义连接字符串,我们在 Appsettings.json "ConnectionStrings" 中写入以下行: { "DefaultConnection": "Server=.;Database=BookListRazor;Trusted_Connection=True;MultipleActiveResultSets=True" }

而且我写了错误的强文本,所以 EF 不知道该怎么做。!

于 2020-03-06T22:37:41.987 回答