我正在开发一个C#mvc应用程序。在我的网站中,我有这个网址abc.com/About/WhoWeAre
,其中'关于'是控制器,'WhoWeAre'是操作名称。但是我希望这个网址以abc.com/About/who-we-are
的形式返回。问题是我无法将包含' - '的操作命名为。我使用Url Redirection
尝试了HttpContext Response
但无法找到解决方案。
如果我在Route Config中处理“关于/我们是谁”的请求并将其路由到“关于/ WhoWeAre”,则它正在使用地址栏中的所需URL。但是当我提出“关于/ WhoWeAre”的请求时,它会返回地址栏中具有相同(“关于/ WhoWeAre”)网址的页面,该网址会复制网址。我该如何重定向?
随时提出任何问题。
答案 0 :(得分:2)
使用ActionName属性映射Url。以下是示例
public class AboutController : Controller
{
[ActionName("Who-we-are")]
public ActionResult WhoWeAre()
{
return View();
}
}
答案 1 :(得分:0)
您可以使用ActionName属性将操作重命名为C#方法名称中不允许的字符。