![](/img/trans.png)
[英]ASP.NET MVC: How can I open simultaneously all documents (say pdf's) , with same particular ID with one controller action?
[英]How can I share same action with two names on ASP.NET MVC Controller
情况是,我需要对ASP.NET控制器中的两个动作名称使用相同的方法。 详细地说,说http://mydomain/Members/Index
和http://mydomain/Members/Browse
应该只对Member控制器起作用或具有与下面相同的方法:
public ActionResult Browse()
{
var members = _dbContext.Members.ToList();
return View("Browse", members);
}
当前,我正在使用两个具有相同代码的ActionResult(分别名为“ Browse”和“ Index”),但是可能有更好的方法来执行此操作。 我研究了Attributes,但是ActionName Attribute不能帮助我满足需要。 此外,谷歌搜索为我提供了相同方法的建议, 但HTTP请求类型和方法重载示例不同。 很感谢任何形式的帮助。
我在控制器中使用了索引动作,并为“成员/浏览”添加了独占路由,以指向“成员”控制器的“索引”动作。 因为相反, “ Members /”给出了404错误。
现在是控制器操作(示例):
public ActionResult Index()
{
var members = _dbContext.Members.ToList();
return View("Index", members);
}
现在在RouteConfig中定义的路由:
routes.MapRoute(
name: "MemberBrowseRoute",
url: "Members/Browse",
defaults: new { Controller = "Members", Action = "Index" });
routes.MapRoute(
name: "Default",
url: "{controller}/{action}/{id}",
defaults: new { controller = "Home", action = "Index", id = UrlParameter.Optional }
);
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.