2

私は事前にバンドルされたものを使用するのが好きではなく、代わりAddMvc()に を使用することを好みますAddMvcCore()

そうは言っても、新しい(2.0の時点で)を使用する方法を考えていAddRazorPages()ましたAddMvcCore().

たとえば、公式リポジトリAddRazorPages()から見つかったもののみを使用するようにミドルウェアの「最低限の」構成を行う場合

// loaded the NuGet package Microsoft.AspNetCore.Mvc.RazorPages
public void ConfigureServices(IServiceCollection services)
{
    services.AddMvcCore()
        .AddRazorPages();
}

foo.cshtmlページを作成して.\Pages\ディレクトリに配置した後、URL に移動すると 404 (ページが見つかりません) が返されます\Foo

.\Pages\Foo.cshtml

@page
@model IndexModel
@using Microsoft.AspNetCore.Mvc.RazorPages

@functions {
    public class IndexModel : PageModel
    {
        public string Message { get; private set; } = "In page model: ";

        public void OnGet()
        {
            Message += $" Server seconds  { DateTime.Now.Second.ToString() }";
        }
    }
}

<h2>Hello World</h2>
<p>
    @Model.Message
</p>

上記のサンプル ページは、Microsoft ドキュメント: ASP.NET Core の Razor ページの概要から取得したものです。

誰かがこれを理解しましたか、何が欠けているか知っていますか? ルーティングに問題があると思います。

4

2 に答える 2