【发布时间】:2022-11-26 15:20:23
【问题描述】:
所以我有一个常规方法和一个 HttpGet 方法:
//Create a new note
public ActionResult EditNote()
{
return View();
}
//Edit a selected note
[HttpGet]
public ActionResult EditNote(int id)
{
var model = NotesProcessor.LoadNote(id);
return View(model);
}
它们都使用相同的视图页面,但只有 HttpGet 方法会用详细信息填充页面,因为用户将在此处编辑现有注释。 所以第一种方法应该打开一个没有填充数据的页面。
我的问题是我不知道如何从我的视图页面调用非 HttpGet 方法,因为它会自动调用 HttpGet 方法并且页面会给我一个错误:
参数字典包含参数“id”的空条目
这就是我尝试调用常规方法的方式:(在添加另一个方法之前效果很好)
@Html.ActionLink("Create New", "EditNote")这是针对 HttpGet 方法的:
@Html.ActionLink("Edit", "EditNote", new { id = Model.Id })老实说,我认为它会检测到非重载语法并调用正确的方法,但事实并非如此。
我可以制作另一个视图页面来创建空白笔记,但这不是很“干”......
我应该怎么办?
【问题讨论】:
标签: c# asp.net-mvc