asp.net - 值不能为空。参数名称:我运行 add-migration 时的 connectionString
问题描述
我试图在我的 appsettings.json 文件中写入我的连接字符串并将其带入我的启动文件,但我不断得到一个值不能为空。参数名称:连接字符串。添加迁移时,我在包管理器控制台中出现以下错误。
这是我的启动:
namespace WebApi
{
public class Startup
{
private string _connectionString = null;
public Startup(IConfiguration configuration)
{
Configuration = configuration;
}
public IConfiguration Configuration { get; }
// This method gets called by the runtime. Use this method to add services to the container.
public void ConfigureServices(IServiceCollection services)
{
_connectionString = Configuration["secretConnectionString"];
services.AddMvc();
services.AddEntityFrameworkNpgsql().AddDbContext<ApiContext>
(Options => Options.UseNpgsql(_connectionString));
}
// This method gets called by the runtime. Use this method to configure the HTTP request pipeline.
public void Configure(IApplicationBuilder app, IHostingEnvironment env)
{
if (env.IsDevelopment())
{
app.UseDeveloperExceptionPage();
}
app.UseMvc();
}
}
}
appsettings.json:
"connectionString": {
"_connectionString": " User Id=Pdev; Password=abcd;Server=localhost;Port=5432;Database=Advantage.Api.Dev;Integrated Security=true;Pooling=true;"
},
解决方案
代替
_connectionString = Configuration["secretConnectionString"];
尝试使用
_connectionString = Configuration.GetValue<string>(
"connectionString:_connectionString")
推荐阅读
- python - Scipy Voronoi 3D 几何返回每个边界面
- gnu-make - 如何将 clearmake 默认设置为 GNU 兼容模式?
- c++ - Visual Studio 找不到
功能 - asp.net - JWT 声明不在 HttpContext.User.Claims 中
- forms - (Vue) Ant Design 使用 v-decorator 以 ant 的形式显示客户端和服务器端验证
- heroku - 将 Heroku 项目迁移到另一种编程语言
- sql - 甲骨文。在选择中使用 max() 仅获取 1 条记录
- docker - 如何在詹金斯管道中使用焦油?
- php - 无法在 Laravel 显示方法上重定向到另一个网站
- mongodb - 使用 moongoose find() 方法查询数组中的项目