将Scaffold-DbContext与用户机密一起使用

时间:2019-11-12 10:05:48

标签: .net-core entity-framework-core

我正在尝试按照this文档中的建议使用EF Core 3.0对数据库上下文进行逆向工程。它建议您可以将连接字符串放入用户密码中,然后运行:

wordList = ["word1","word2","word3","word4"]
regx = r'({})'.format('|'.join(wordList))
test_df['sent'] = test_df['sent'].str.replace(regx, "new_word").fillna(test_df['sent'])

我尝试如下初始化用户密码:

dotnet ef dbcontext scaffold Name=my_key Microsoft.EntityFrameworkCore.SqlServer

然后运行上面的命令,我也尝试过此操作(就像我在使用PMC工具一样)

dotnet user-secrets init
dotnet user-secrets set ConnectionStrings.my_key "Data Source=........... etc."

但都给我相同的错误:

  

使用了一个命名的连接字符串,但是在应用程序的配置中找不到名称“ my_key ”。请注意,仅在使用“ IConfiguration”和服务提供程序时(例如在典型的ASP.NET Core应用程序中),才支持命名连接字符串。

1 个答案:

答案 0 :(得分:0)

文档错误。您需要在命令中包括“ ConnectionStrings”前缀,如下所示:

Scaffold-DbContext Name=my_key Microsoft.EntityFrameworkCore.SqlServer -OutputDir Models