c# - 模型在使用 C# 将 POST 方法作为参数传递给 ASP.NET MVC 中同一控制器的 GET 方法时获取 NULL
问题描述
我无法在同一控制器GET
传递的方法中获取模型及其值。POST
请在下面找到代码片段。请帮我解决它。
模型:
public class country
{
public string CountryCode { get; set; }
public long? CountryId { get; set; }
}
控制器:
[HttpGet]
public async Task<ActionResult> Create()
{
return View();
}
[HttpPost]
public async Task<ActionResult> Create(Country _country)
{
var data = await checkduplicate(_country);
if (!data.status)
{
ModelState.AddModelError("Name", data.ErrorMessage);
return RedirectToAction("Edit", new {_country});
}
else
{
return RedirectToAction("Index");
}
}
public async Task<ActionResult> Edit(Country _country)
{
return View("Create", _country);
}
在这个示例中,我只给出了两个值,但实际上我有大约 8 个参数。请提出建议。我使用了剃刀视图页面。
提前致谢。
解决方案
我得到了答案,这是一个小错误,同时通过 post end 发送模型。它应该如下所示。我在其中包含了关键字“new”。删除关键字 new 后,它工作正常。
[HttpPost]
public async Task<ActionResult> Create(Country _country)
{
var data = await checkduplicate(_country);
if (!data.status)
{
ModelState.AddModelError("Name", data.ErrorMessage);
return RedirectToAction("Edit", _country);
}
else
{
return RedirectToAction("Index");
}
}
推荐阅读
- image - SVG 无法在 IE / Edge 中正确显示
- windows - 如何从 Windows 命令提示符启动运行窗口(Windows 键 + R)?我还想定义 WHAT 程序 Run 应该在同一命令中打开
- c# - 动态加载 DropDownList
- c# - 通过 azure 函数以同步方式同时处理多个文件
- scheme - 方案中的嵌套条件和未指定的返回值
- python - np.uint8() 使法线向量计算错误
- python - Seaborn pairplot,每个三角形都有不同的数据
- regex - 使用正则表达式的 Github 用户名约定
- java - 垃圾收集器如何释放那些在没有任何引用名称的情况下创建的新对象
- angular - 单击时切换未按预期显示数据