簡體   English   中英

IIS上的Asp.Net Core 2.0.5部署

[英]Asp.Net Core 2.0.5 deployment on IIS

我嘗試將asp.net Core 2.0.5項目部署到IIS。 我創建了一個默認的Asp.Net Core MVC應用程序,並對其進行了部署。 一切正常。 但是當我在program.cs中添加時:

using (var scope = host.Services.CreateScope())
{
    var initializer = scope.ServiceProvider.GetService<MasterDbInitializer>();
    initializer.Seed();
}

並在startup.cs中:

        services.AddScoped<MasterDbInitializer>();

和MasterDbInitializer.cs:

public class MasterDbInitializer
{
    private readonly MasterDbContext _ctx;

    public MasterDbInitializer(MasterDbContext ctx)
    {
        _ctx = ctx;
    }

    public void Seed()
    {
        // Run Migrations
        _ctx.Database.Migrate();

    }
}

我有: HTTP錯誤502.5-進程失敗,並且未生成數據庫。

因此,要了解更多信息,請在web.config 中將stdoutLogEnabled更新為true,並在startup.cs中添加loggerFactory.AddFile(“ Logs / myapp- {Date} .txt”); (Serilog)具有更多日志。

這是我在日志中的內容:

信息:Microsoft.AspNetCore.DataProtection.KeyManagement.XmlKeyManager [0]用戶配置文件不可用。 使用>'HKEY_LOCAL_MACHINE \\ SOFTWARE \\ Microsoft \\ ASP.NET \\ 4.0.30319.0 \\ AutoGenKeys \\ XXXX \\ DataProtection'作為密鑰存儲庫,並使用Windows DPAPI加密靜態密鑰。 警告:Microsoft.EntityFrameworkCore.Model.Validation [20601]實體類型>“ ActivationRequest”的'bool'屬性'HasBeenReroutedToCustomer'已配置為數據庫生成的默認值。 當屬性的值為'false'時,將始終使用此默認值,因為這是'bool'類型的CLR默認值。 考慮使用可為空的“布爾”嗎? 請改為鍵入,以便僅在屬性值為'null'時使用默認值。 警告:Microsoft.EntityFrameworkCore.Model.Validation [20601]實體類型'ActivationRequest'的'bool'屬性'HasBeenViewed'已配置為數據庫生成的默認值。 當屬性值為“ false”時,將始終使用此默認值,因為這是“ bool”類型的CLR默認值。 考慮使用可為空的“布爾”嗎? 請改為鍵入,以便> default將僅在屬性值為“ null”時使用。 警告:Microsoft.EntityFrameworkCore.Model.Validation [20601]實體類型'MasterDeviceIdentifier'的'bool'屬性'Deleted'已配置為數據庫生成的默認值。 當屬性值為“ false”時,將始終使用此默認值,因為這是“ bool”類型的CLR默認值。 考慮使用可為空的“布爾”嗎? 請改為鍵入,以便僅在屬性值為'null'時使用默認值。 信息:Microsoft.EntityFrameworkCore.Infrastructure [10403]實體框架核心2.0.1-rtm-125使用提供程序'Microsoft.EntityFrameworkCore.SqlServer'初始化了'MasterDbContext',選項為:無

Windows帶IISHost ASP.NET Core在IIS文檔中所述,將應用程序池配置為在不使用其他數據保護存儲的情況下允許用戶配置文件:

配置IIS應用程序池以加載用戶配置文件

此設置位於應用程序池“高級設置”下的“過程模型”部分中。 將“加載用戶配置文件”設置為“ True”。 這會將密鑰存儲在用戶配置文件目錄下,並使用DPAPI通過專用於應用程序池的用戶帳戶的密鑰來保護密鑰。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM