2008-09-12 14 views
12

A partir de ASP.NET MVC Preview 3, HTML.Button (y otros controles HTML relacionados) ya no son compatibles.HTML.Button en ASP.NET MVC

La pregunta es, ¿cuál es el equivalente para ellos? Tengo una aplicación que se creó con la Vista previa 2, ahora tengo que hacerla compatible con las últimas versiones de CTP.

Respuesta

11

Lo entendí. Es algo como esto:

<form method="post" action="<%= Html.AttributeEncode(Url.Action("CastUpVote")) %>"> 
<input type="submit" value="<%=ViewData.Model.UpVotes%> up votes" /> 
</form> 

¡Gracias a todos por su ayuda!

+5

No necesita los formularios <% that's asp.net. Use la maquinilla de afeitar de modo que value = "@ Model.UpVotes" no use la vieja maquinilla de afeitar <% %>. – PositiveGuy

+0

¿Por qué? Por lo que puedo ver, es una preferencia personal utilizar la sintaxis Razor o WebForms. Ambos son compatibles y si un equipo ya está usando uno y está funcionando bien para ellos, entonces probablemente deberían seguir con él. No debería simplemente descartar algo porque es "viejo". (Por cierto, la pregunta original, y esta respuesta, se publicaron en 2008 - Antes de que navaja de afeitar viniera a ASP.NET MVC) –

+2

Es una preferencia personal, pero es la preferencia personal incorrecta – Jonesopolis

13

Simplemente escriba < tipo de entrada = "botón" ... /> en su html. No hay nada especial en absoluto con los controles html.

+0

vistazo a http://stackoverflow.com/questions/407770/mapping-individual-buttons-on-asp-net-mvc-view-to-controller-actions –

-12

es el ASP.NET equivalente al HTML.Button. Por defecto generará un <input type="button">. (Esta es la clase System.Web.UI.WebControls.Button)

+4

No es útil, la pregunta era acerca de ASP.NET MVC , no Formas Web. –

4

Varios de los métodos de extensión se movieron a Microsoft.Web.Mvc, que es MVC Futures DLL. Es posible que desee buscar allí las cosas que se han perdido.