ASP.NET Core 中的持久化组件状态标记帮助程序
持久组件状态标记帮助程序保存 Razor 页面或 MVC 应用的页面或视图中呈现的非可路由 Razor 组件的状态。
先决条件
按照集成 ASP.NET Core Razor 组件到 ASP.NET Core 应用文章的页面或视图部分中的“使用不可路由组件”部分中的指导进行操作。
按照以下内容的“配置”部分中的指南操作:
持久保存预呈现组件的状态
要保留预呈现组件的状态,请使用“保留组件状态”标记帮助程序(参考源)。 在预呈现组件的应用的布局的结束 </body>
标记内添加标记帮助程序的标记 <persist-component-state />
。
注意
指向 .NET 参考源的文档链接通常会加载存储库的默认分支,该分支表示针对下一个 .NET 版本的当前开发。 若要为特定版本选择标记,请使用“切换分支或标记”下拉列表。 有关详细信息,请参阅如何选择 ASP.NET Core 源代码的版本标记 (dotnet/AspNetCore.Docs #26205)。
对于 WebAssembly 预呈现(WebAssemblyPrerendered
)或服务器预呈现(ServerPrerendered
)的嵌入式组件,在 Pages/Shared/_Layout.cshtml
中:
<body>
...
<persist-component-state />
</body>
决定要使用 PersistentComponentState 服务保留的状态。 PersistentComponentState.RegisterOnPersisting
注册回调以在暂停应用之前保留组件状态。 在应用程序恢复时检索状态。
有关详细信息和示例,请参阅预呈现 ASP.NET CoreRazor 组件。
要保留预呈现组件的状态,请使用“保留组件状态”标记帮助程序(参考源)。 在预呈现组件的应用的 _Host
页面的结束 </body>
标记内添加标记帮助程序的标记 <persist-component-state />
。
注意
指向 .NET 参考源的文档链接通常会加载存储库的默认分支,该分支表示针对下一个 .NET 版本的当前开发。 若要为特定版本选择标记,请使用“切换分支或标记”下拉列表。 有关详细信息,请参阅如何选择 ASP.NET Core 源代码的版本标记 (dotnet/AspNetCore.Docs #26205)。
在 Blazor 应用(托管 Blazor WebAssembly 应用中预呈现的 WebAssembly (WebAssemblyPrerendered
),或 Blazor Server 应用中的 ServerPrerendered
)的 Pages/_Host.cshtml
中:
<body>
...
<persist-component-state />
</body>
决定要使用 PersistentComponentState 服务保留的状态。 PersistentComponentState.RegisterOnPersisting
注册回调以在暂停应用之前保留组件状态。 在应用程序恢复时检索状态。
有关详细信息和示例,请参阅预呈现和集成 ASP.NET Core Razor 组件。
其他资源
反馈
https://aka.ms/ContentUserFeedback。
即将发布:在整个 2024 年,我们将逐步淘汰作为内容反馈机制的“GitHub 问题”,并将其取代为新的反馈系统。 有关详细信息,请参阅:提交和查看相关反馈