代码之家  ›  专栏  ›  技术社区  ›  mxmissile

ASP.NET MVC 2中的强类型ActionLink?

  •  12
  • mxmissile  · 技术社区  · 16 年前

    我刚刚下载了vs.net 2010 rc并创建了一个新的MVC项目。强类型的ActionLinks似乎不在这个版本中?这总是一个“未来”的事情吗?还是我错过了什么?

    <%=Html.ActionLink<HomeController>(x => x.Index(),"Home")%>
    
    2 回复  |  直到 16 年前
        1
  •  3
  •   Sergey Mirvoda    16 年前

    不,没有actionLink<gt;请参阅scottgu blog (( 出于性能原因。

    回复:ASP.NET MVC 2:强类型HTML 帮手:2010年1月12日星期二2:32 我是ScottGu

    @安东尼,

    但是强类型的ActionLinks呢?

    我们不添加内置运行时 帮手-但大卫·埃博 创建了一个不错的vs工具附加组件 创建强类型的帮助程序 使用:aspnet.codeplex.com/wikipage

    希望这有帮助,

    斯科特

        2
  •  10
  •   Levi    16 年前

    强类型的actionlink和route helpers不会很快从期货转移到主要产品。一般来说,MVC管道是不可能向后运行的。也就是说,如果给定了一个方法和参数,就不可能确定一条路线来保证达到该动作。例如,自定义控制器工厂、操作调用程序、过滤器、现有文件或任何数量的其他东西都会影响特定路由最终命中的操作(如果有)。

    因此,期货中强类型ActionLink的契约本质上是“给出了这个信息,并且假设没有扩展性挂钩,猜测哪个路径会影响这个操作。”这样的契约不适合实际支持的框架代码。