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

How to detect postback in Razor Page?

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

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

我在 class 中创建了一个字符串 属性 并在 OnPost 中为其设置了一个值,但是一旦我进入视图,属性 就是 null.

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

-- 编辑--
看来问题是我正在尝试在 OnPost 中设置 属性,这是请求。在 OnPost 之后,OnGet 将始终触发。 OnGet 是响应。我可以在 this.Request.Method 中看到从 POSTGET 的翻转。所以我没有任何迹象表明发生了 post 倒退。

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

您应该使用 Post-Redirect-Get 模式。消息可以存储在 TempData