MVC3 Url.Action() - 有没有更简单的方法在MVC3中编写链接?

时间:2012-03-08 16:45:30

标签: asp.net-mvc-3

我正在网站上工作,我是MVC3框架的新手。我来自一个写URL非常简单href="some/web/page.html"的地方,但现在MVC3的URL更复杂。

复杂的意思是更多参与写作。 href="@Url.Action("index", "Home")"需要多次点击shift键,这对于来自href="some/web/page.html"的人来说只有两次点击是一件令人厌烦和多余的事情。

我正在使用的网站正在使用区域,这会增加URL的复杂程度。

href="@Url.Action("index", "area", new { area = "some_area})"

我正在制作一个100多页的网站。写这些@Action.Url()变得无聊和恼人。我有什么办法可以减少冗余吗?

2 个答案:

答案 0 :(得分:3)

您可以尝试使用T4MVC,除此之外您无法做到。

您可以阅读它的文档here

答案 1 :(得分:2)

你可以像Kazi这样解释一些扩展方法: http://weblogs.asp.net/rashid/archive/2009/04/01/asp-net-mvc-best-practices-part-1.aspx

这样的事情:

public static class UrlHelperExtension
{
    public static string Home(this UrlHelper helper)
    {
        return helper.Content("~/");
    }
}

您还可以使用David Ebbo MVC T4模板生成辅助方法: http://blogs.msdn.com/b/davidebb/archive/2009/06/01/a-buildprovider-to-simplify-your-asp-net-mvc-action-links.aspx

http://blogs.msdn.com/b/davidebb/archive/2009/06/26/the-mvc-t4-template-is-now-up-on-codeplex-and-it-does-change-your-code-a-bit.aspx

http://mvccontrib.codeplex.com/wikipage?title=T4MVC_doc&referringTitle=T4MVC

希望这有帮助