EF-core與PostgreSQL遷移錯誤

asp.net-core asp.net-core-mvc entity-framework-core

在我的appsettings.json中:

{
  "Data": {
    "DefaultConnection": {
      "ConnectionString": "Host=localhost;Username={{postgres}};Password={{postgres}};Database={{asp_trial_api}};Port=5432;Pooling=true;"
    }
},
  "Logging": {
    "IncludeScopes": false,
    "LogLevel": {
      "Default": "Debug",
      "System": "Information",
      "Microsoft": "Information"
    }
  }
}

在我的startup.cs中:

 public void ConfigureServices(IServiceCollection services)
        {
            // Add framework services.
            services.AddApplicationInsightsTelemetry(Configuration);

            services.AddDbContext<WebAPIDataContext>(options => {
                options.UseNpgsql(Configuration["Data:DefaultConnection:ConnectionString"]);
            });

            services.AddMvc();
            services.AddSwaggerGen();
        }

我的dotnet ef migrations add initial成功但是dotnet ef database update給了我以下錯誤:

28P01: password authentication failed for user "{{postgres}}"

我在連接字符串中提供的用戶名和密碼是正確的。我已經在PostgresSQL中創建了一個名為asp_trial_api的空白數據庫。

這裡出了什麼問題?

熱門答案

問題似乎在連接字符串中有一些缺少的屬性,例如User IDServer 。嘗試以下CS

"ConnectionStrings": {
    "DefaultConnection": "User ID=postgres;Password={{pass}};Server=localhost;Port=1234;Database={{database}};Integrated Security=true;Pooling=true;"
},

我有一個GitHub Repo用於帶有Postgres數據庫的ASP.NET Core應用程序的工作示例。



Related

許可下: CC-BY-SA with attribution
不隸屬於 Stack Overflow
許可下: CC-BY-SA with attribution
不隸屬於 Stack Overflow