次の方法で共有


ASP.NET Core でのコンポーネントの状態保持タグ ヘルパー

Persist Component State Tag Helper を使うと、Razor Pages または MVC アプリのページまたはビュー内にレンダリングされたルーティング不可能な Razor コンポーネントの状態を保存できます。

前提条件

mvc または Pages を使用した Integrate ASP.NET Core Razor コンポーネントRazorページまたはビューでのルーティング不可能なコンポーネントの使用に関する記事のガイダンスに従ってください。

構成に関するセクションのガイダンスに、次のいずれかにおいても従います。

プリレンダリングされたコンポーネントの状態を保持する

プリレンダリング済みコンポーネントの状態を保持するには、コンポーネントの状態保持タグ ヘルパー (参照ソース) を使用します。 コンポーネントをプリレンダリングするアプリのレイアウトの <persist-component-state /> の終了タグの内側に、タグ ヘルパのタグ </body> を追加します。

Note

通常、.NET 参照ソースへのドキュメント リンクを使用すると、リポジトリの既定のブランチが読み込まれます。このブランチは、.NET の次回リリースに向けて行われている現在の開発を表します。 特定のリリースのタグを選択するには、[Switch branches or tags](ブランチまたはタグの切り替え) ドロップダウン リストを使います。 詳細については、「ASP.NET Core ソース コードのバージョン タグを選択する方法」 (dotnet/AspNetCore.Docs #26205) を参照してください。

WebAssembly でプリレンダリング (Pages/Shared/_Layout.cshtml) またはサーバーでプリレンダリング (WebAssemblyPrerendered) された埋め込みコンポーネントの ServerPrerendered の場合:

<body>
    ...

    <persist-component-state />
</body>

PersistentComponentState サービスを使用してどの状態を永続化するか決定します。 アプリが一時停止される前に、PersistentComponentState.RegisterOnPersisting によってコールバックが登録され、コンポーネントの状態が保持されます。 状態は、アプリケーションの再開時に取得されます。

詳細と例については、 ASP.NET Core Blazor プリレンダリングされた状態の永続化に関する説明を参照してください。

プリレンダリング済みコンポーネントの状態を保持するには、コンポーネントの状態保持タグ ヘルパー (参照ソース) を使用します。 コンポーネントをプリレンダリングするアプリの <persist-component-state /> ページの </body> の終了タグの内側に、タグ ヘルパのタグ _Host を追加します。

Note

通常、.NET 参照ソースへのドキュメント リンクを使用すると、リポジトリの既定のブランチが読み込まれます。このブランチは、.NET の次回リリースに向けて行われている現在の開発を表します。 特定のリリースのタグを選択するには、[Switch branches or tags](ブランチまたはタグの切り替え) ドロップダウン リストを使います。 詳細については、「ASP.NET Core ソース コードのバージョン タグを選択する方法」 (dotnet/AspNetCore.Docs #26205) を参照してください。

ホストされた Pages/_Host.cshtml アプリのプリレンダリングされた WebAssembly (Blazor) または WebAssemblyPrerendered アプリの Blazor WebAssembly である、ServerPrerendered アプリの Blazor Server 内:

<body>
    ...

    <persist-component-state />
</body>

PersistentComponentState サービスを使用してどの状態を永続化するか決定します。 アプリが一時停止される前に、PersistentComponentState.RegisterOnPersisting によってコールバックが登録され、コンポーネントの状態が保持されます。 状態は、アプリケーションの再開時に取得されます。

詳細と例については、「MVC または Razor Pages を使用したコア Razor コンポーネント ASP.NET 統合」を参照してください。

その他のリソース