2010-02-10 25 views
12

Acabo de descargar VS.NET 2010 RC y he creado un nuevo proyecto MVC. Parece que los ActionLinks fuertemente tipados no están en esta versión. ¿Esto siempre va a ser una cosa de "futuros"? ¿O me estoy perdiendo algo?ActionLink fuertemente tipado en Asp.Net MVC 2?

<%=Html.ActionLink<HomeController>(x => x.Index(),"Home")%> 
+0

odio cuando la esperanza se cierre – mxmissile

Respuesta

3

No hay ninguna ActionLink <> ver ScottGu blog (( Por motivos de rendimiento

re:. ASP.NET MVC 2: Totalmente de HTML escrito Ayudantes Martes, 12 de enero de 2010 2 : 32 AM por ScottGu

@Anthony,

pero ¿qué pasa ActionLinks inflexible?

No estamos añadiendo incorporados en tiempo de ejecución ayudantes para esto - pero David Ebbo ha creado un buen VS utillaje complemento que crea strongly- ayudantes con tipo que pueda uso: aspnet.codeplex.com/wikipage

esperanza esta hel ps,

de Scott

+1

¿Dónde dice que el rendimiento fue la razón para excluir ActionLinks fuertemente tipados? –

10

inflexible de tipos ayudantes ActionLink y rutas no están programados para ser trasladado de futuros para el producto principal en el corto plazo. En general, no es posible ejecutar la tubería MVC hacia atrás. Es decir, dado un MethodInfo y parámetros, es imposible hacer una ruta que garantice que se ejecute esa acción. Por ejemplo, las fábricas de controladores personalizados, los invocadores de acciones, los filtros, los archivos existentes o cualquier cantidad de otras cosas pueden afectar la acción (si corresponde) que una ruta en particular termina tocando.

Debido a esto, el contrato de ActionLink fuertemente tipado en futuros es esencialmente "dada esta información y suponiendo que no hay ganchos de extensibilidad, adivinen qué ruta afectará esta acción". Tal contrato es inapropiado para el código de marco real soportado.

Cuestiones relacionadas