C# ASP.NET Razor页面提交按钮不执行任何操作
我有这样的看法:C# ASP.NET Razor页面提交按钮不执行任何操作,c#,asp.net,razor,razor-pages,C#,Asp.net,Razor,Razor Pages,我有这样的看法: @page @model TreesOnMars.Pages.NewGameModel @{ ViewData["Title"] = "New Game"; } <h2>New Game</h2> <form method="POST"> <table> <tr> <td><label asp-for="Name"></label
@page
@model TreesOnMars.Pages.NewGameModel
@{
ViewData["Title"] = "New Game";
}
<h2>New Game</h2>
<form method="POST">
<table>
<tr>
<td><label asp-for="Name"></label></td>
<td><input type="text" asp-for="Name" /></td>
</tr>
</table>
</form>
<button type="submit" asp-route-data="@Model.Name">Create Game</button>
@page
@模型树nomars.Pages.NewGameModel
@{
ViewData[“Title”]=“新游戏”;
}
新游戏
创造游戏
使用此页面模型:
[Authorize]
public class NewGameModel : PageModel
{
public void OnGet()
{
}
public void OnPost()
{
Redirect($"Game/{Name}");
}
/// <summary>
/// The name of the game to create.
/// </summary>
public string Name { get; }
}
[授权]
公共类NewGameModel:PageModel
{
公共互联网
{
}
邮政署公告
{
重定向($“Game/{Name}”);
}
///
///要创建的游戏的名称。
///
公共字符串名称{get;}
}
但是当我单击submit按钮时,什么也没有发生——OnGet和OnPost方法都没有被调用。这是怎么回事?如何在post()上调用submit按钮?哦,我是个白痴-submit按钮需要在表单中 然而,即使调用了
OnPost
方法,重定向也不起作用。。。我还尝试了重定向Topage(“游戏”,名称)…哦,这个问题很有帮助:所以你添加了一个return
语句,并将OnPost
方法更改为返回IActionResult
,而不是void
?是的!我就是这么做的,因为你问题的背景已经改变了。我建议您更改问题本身,以避免误导。请提供控制器方法代码。原始问题由我的答案回答,没有控制器-这是Razor Pages。