在Asp.Net MVC 2中强类型ActionLink?

mxm*_*ile 12 asp.net-mvc-2

我刚刚下载了VS.NET 2010 RC并创建了一个新的MVC项目.似乎强类型的ActionLinks不在此版本中?这总是会成为"未来"吗?或者我错过了什么?

<%=Html.ActionLink<HomeController>(x => x.Index(),"Home")%>
Run Code Online (Sandbox Code Playgroud)

Lev*_*evi 10

强类型的ActionLink和路线助手不会计划很快从Futures转移到主产品.通常,不可能向后运行MVC管道.也就是说,给定一个MethodInfo和参数,就不可能制作一条保证能够击中该动作的路线.例如,自定义控制器工厂,操作调用程序,过滤器,现有文件或任何其他内容可能会影响特定路由最终命中的操作(如果有).

因此,期货中强类型ActionLink的合约基本上是"给定这些信息并且假设没有可扩展性钩子,猜测哪条路线会触及这个动作." 这样的合同不适合实际支持的框架代码.


Ser*_*oda 3

不,没有 ActionLink<> 请参阅 ScottGu博客((出于性能原因。

回复:ASP.NET MVC 2:强类型 Html 助手 2010 年 1 月 12 日星期二 2:32 AM 作者:ScottGu

@安东尼,

但是强类型的 ActionLink 又如何呢?

我们不会为此添加内置运行时帮助程序 - 但 David Ebbo 创建了一个很好的 VS 工具插件,可以创建您可以使用的强类型帮助程序:aspnet.codeplex.com/wikipage

希望这可以帮助,

斯科特