ASP.NET core MVC,控制器中request该如何去获取页面中input的值
时间: 2023-08-11 07:06:11 浏览: 158
ASP.NET在MVC控制器中获取Form表单值的方法
在 ASP.NET Core MVC 中,您可以使用 `HttpContext` 对象来获取请求中包含的表单数据,包括页面中 `input` 元素的值。具体来说,您可以使用 `HttpRequest` 对象的 `Form` 属性来获取表单数据,该属性返回一个 `IFormCollection` 对象,其中包含表单数据的键值对。
以下是一个示例,展示了如何在控制器中获取表单数据:
```csharp
public class MyController : Controller
{
public IActionResult Index()
{
// 处理 GET 请求,显示表单页面
return View();
}
[HttpPost]
public IActionResult Index(IFormCollection form)
{
// 处理 POST 请求,获取表单数据
string username = form["username"];
string password = form["password"];
// 使用表单数据进行处理
return View();
}
}
```
在上面的示例中,`Index` 方法包含两个重载版本,一个处理 GET 请求,另一个处理 POST 请求。在 POST 请求的处理方法中,我们将 `IFormCollection` 对象作为参数传递给方法,该对象包含表单数据的键值对。然后,我们可以使用键值对的键来访问表单数据的值。
如果您使用的是模型绑定,您可以将表单数据绑定到模型类的属性中,而不必手动提取表单数据。以下是一个示例,展示了如何使用模型绑定来获取表单数据:
```csharp
public class MyController : Controller
{
public IActionResult Index()
{
// 处理 GET 请求,显示表单页面
return View();
}
[HttpPost]
public IActionResult Index(MyModel model)
{
// 处理 POST 请求,获取表单数据
string username = model.Username;
string password = model.Password;
// 使用模型数据进行处理
return View();
}
}
```
在上面的示例中,我们定义了一个名为 `MyModel` 的模型类,其中包含两个属性 `Username` 和 `Password`。在 POST 请求的处理方法中,我们将 `MyModel` 对象作为参数传递给方法,ASP.NET Core MVC 将使用模型绑定来将表单数据绑定到模型类的属性中。然后,我们可以使用模型类的属性来访问表单数据的值。
阅读全文