剃刀页面和服务器方法
Posted
技术标签:
【中文标题】剃刀页面和服务器方法【英文标题】:razor pages and server methods 【发布时间】:2019-01-30 02:05:38 【问题描述】:我对如何在 razor 页面中调用或创建服务器/控制器方法感到困惑。当我做 MVC 时,我会在控制器中创建方法并使用锚标记来调用它:
<a href="/Security/LogOut/">
如何在 razor 页面中执行此操作?我最终创建了一个新页面名称“SignOut”并在 OnGet 中实现了登录,并使用了这样的锚标记:
<a href="/SignOut">
如果我想在一个文件中组合多个操作方法怎么办?我需要为每个操作创建一个页面吗?
【问题讨论】:
@Url.Action("Action", "Controller") 可能是您要查找的内容,但要准确理解您的要求有点困难。您可能会对这篇 SO 帖子感兴趣***.com/questions/7709001/… 没有。那是旧的 MVC 东西。我指的是 Core 2.1 / Razor Pages ***.com/questions/47767851/url-action-in-asp-net-core 【参考方案1】:您可能早就找到了您正在寻找的答案。对于看到此问题的其他人,您可以使用:
<a asp-page="/SignOut">Sign Out</a>
对于 Razor Pages,GET
和 POST
方法由每个代码隐藏文件处理。例如,对于 Razor 页面Details.cshtml
,有一个名为Details.cshtml.cs
的代码隐藏文件,它定义了OnPostAsync
和OnGetAsync
,它们分别处理POST
和GET
请求。有关详细信息,请参阅:
Microsoft Razor Pages Tutorial
【讨论】:
以上是关于剃刀页面和服务器方法的主要内容,如果未能解决你的问题,请参考以下文章