c# - 如何检测 Razor 页面中的回发?

标签 c# asp.net-core-2.0 razor-pages

我正在使用具有 form@functions{} 部分的单个 razor 页面 (cshtml) 来捕获 OnPost()。所有这些都很好。

在 HTML 部分,我需要知道回发何时发生并显示一条消息。我不确定在 Razor 页面中是在哪里或如何完成的。我已经尝试过 IsPost 但它不可用。

我在类中创建了一个字符串属性,并在 OnPost 中为其设置了一个值,但是当我进入 View 时,该属性为 null

我为 ViewData["mystring"] 分配了一个值,但一旦进入 View ,它也为空。

-- 编辑--
看来问题是我正在尝试在 OnPost 中设置一个属性,这是请求。在 OnPost 之后,OnGet 将始终触发。 OnGet 是响应。我可以在 this.Request.Method 中看到从 POSTGET 的转换。所以我失去了任何发生回发的迹象。

关于如何做到这一点有什么建议吗?

最佳答案

你应该使用 Post-Redirect-Get图案。消息可以存储在TempData中

关于c# - 如何检测 Razor 页面中的回发?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47820332/

相关文章:

c# - 以编程方式访问应用程序功能

c# - Linux 上的 .NET 核心 X509Store

javascript - 如何从 JavaScript 触发 ASP.NET Core 客户端验证

c# - 在注销 Razor 页面上禁用获取请求

asp.net-core - Razor 页面中的流利验证

c# - 处理器使用情况(强制完全使用)

c# - Microsoft.AspNetCore.Hosting.Internal.WebHost 和 log4net.LogicalThreadContext.Properties ["requestid"]

c# - 根据文件填充一组复选框

c# - Url.Action 从哪里获取这些值?

c# - ASP.NET Core 2 EmailSender 与 Sendgrid 的异常