C# 当使用无参数视图()重新调用视图时,视图正在缓存其以前的数据;我不想这样

C# 当使用无参数视图()重新调用视图时,视图正在缓存其以前的数据;我不想这样,c#,asp.net-core,C#,Asp.net Core,我有一个简单的POCO模型Person public class Person { public int PersonId { get; set; } public string Name { get; set; } public int Age { get; set; } } 有关的行动方法如下: public IActionResult Register() { return View(); } [HttpPost] public IActionResul

我有一个简单的POCO模型
Person

public class Person
{
    public int PersonId { get; set; }
    public string Name { get; set; }
    public int Age { get; set; }
}
有关的行动方法如下:

public IActionResult Register()
{
    return View();
}

[HttpPost]
public IActionResult Register(Person p)
{
    return View();
}
导航到
\Home\Register
将显示我填写并提交的HTML表单。提交表格后,我看到的是同一页,而不是空白页我希望表格是空白的

问题: 为什么返回
View()
(不传递任何
Person
实例)的第二个操作方法会生成一个完全填充的页面?我该如何阻止这种行为

编辑
@模特儿
@使用(Html.BeginForm(nameof(HomeController.Register)、nameof(HomeController.Replace)(nameof(Controller)、string.Empty、FormMethod.Post))
{
@LabelFor(m=>m.Name)
@Html.TextBoxFor(m=>m.Name)
@LabelFor(m=>m.Age)
@Html.TextBoxFor(m=>m.Age)
}

假设您使用的是ASP.NET核心MVC,则在提交过程中由ASP.NET自动填充并应用于视图。要取回空表单,您只需清除它:

[HttpPost]
public IActionResult Register(Person p)
{
    ModelState.Clear();
    return View();
}
你不妨仔细阅读一下。这将解决您的问题,并为您的用户提供更好的体验。
[HttpPost]
public IActionResult Register(Person p)
{
    ModelState.Clear();
    return View();
}