【发布时间】:2010-09-07 11:53:26
【问题描述】:
使用开箱即用的 MVC,我发现生成的 URL 可能会产生误导,我想知道这是否可以解决,或者我的方法/理解是否错误。
假设我有一个 CreateEgg 页面,上面有一个表单,一旦表单被填写并提交,用户就会被带到一个 ListEggs 页面,其中包含新的鸡蛋。
所以我的鸡蛋控制器看起来像这样:
public class EggController : Controller
{
public void Add()
{
//do stuff
RenderView("CreateEgg", viewData);
}
public void Create()
{
//do stuff
RenderView("ListEggs", viewData);
}
}
所以我的第一页会有一个类似http://localhost/egg/add 的网址,并且页面上的表单将有一个动作:
using (Html.Form<EggController>(c => c.Create())
意思是第二页会有一个http://localhost/Egg/Create 的url,对我来说这是误导,这个动作应该被称为Create,因为我正在创建鸡蛋,但是一个列表视图正在显示,所以http://localhost/Egg/List 的url 会制作更多场景。如何在不误导视图或操作名称的情况下实现这一目标?
【问题讨论】:
标签: c# asp.net-mvc