【发布时间】:2019-07-19 10:02:04
【问题描述】:
我在这里尝试做一些非常简单的事情。对 MVC 和 Razor 的新用户表示歉意
这是 Razor 视图页面 (.cshtml)。
为什么单击按钮时 ShowMessage 函数没有触发
理想情况下,函数的代码是否也应该放在此处或 cshtml.cs 文件中? 我设法在 cshtml.cs 文件中调用了一个方法,但我无法显示警告框来通知最终用户成功或失败,所以现在我正在尝试使用 ViewBag 以这种方式。
@page
@model IndexModel
@{
ViewData["Title"] = "Air Menu page";
@functions
{
public void ShowMessage()
{
string output = "Hello";
ViewBag.Message(output);
}
}
}
<form asp-page-handler="showmessage" method="post">
<button class="btn btn-default">Show Message</button>
</form>
【问题讨论】:
-
嗨,为什么不用
Action("method", "controller", "params")来称呼它? -
控制器在 VS2017 的 razor .netcore 项目中在哪里我看不到?
-
你使用的是Core还是MVC
-
带有剃须刀页面的核心
-
看,你不应该在 IndexModel 中使用
Async Task<IActionResult> OnPostshowmessageAsync()方法吗?而且我认为您的按钮应该触发提交操作。
标签: razor model-view-controller razor-pages