asp.net mvc 控制器中操作方法重载问题 解决

Controllers:

public ActionResult Index()

{

return View(db.GuestBooks.ToList());

}

//

// GET: /Guest2/

[HttpPost]

public ActionResult Index(string UserName)

{

ViewData.Model = UserName;

return View();

}

//

// GET: /Guest2/

[HttpPost]

public ActionResult Index(GuestBookInfo gInfo)

{

ViewData.Model = gInfo;

return View();

}

view:

<form method="post">

<div>

<ul>

<li>ID:</li>

<li><input type="text" /></li>

</ul>

</div>

</form>

点击提交访问后,报错:

对控制器类型“Guest2Controller”的操作“index”的当前请求在下列操作方法之间不明确:

类型 Mvc4Study.Controllers.Guest2Controller 的 System.Web.Mvc.ActionResult Index(System.String)

类型 Mvc4Study.Controllers.Guest2Controller 的 System.Web.Mvc.ActionResult Index(Mvc4Study.Models.GuestBookInfo)

解决方法:

修改操作名称

[ActionName("info")]

public ActionResult Index(GuestBookInfo gInfo)