2008-09-12 7 views
12

A partir d'ASP.NET MVC Preview 3, HTML.Button (et d'autres contrôles HTML associés) ne sont plus pris en charge. La question est, quel est l'équivalent pour eux? J'ai une application qui a été créée avec Preview 2, maintenant je dois la rendre compatible avec les dernières versions de CTP.HTML.Button dans ASP.NET MVC

Répondre

11

Je l'ai compris. Il se passe quelque chose comme ceci:

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

Merci à tous pour votre aide!

+5

Vous n'avez pas besoin des formulaires <% that asp.net. Utilisez le rasoir ainsi value = "@ Model.UpVotes" n'utilisez pas l'ancien <% %> utilisez Razor. – PositiveGuy

+0

Pourquoi? Autant que je puisse voir, c'est une préférence personnelle d'utiliser la syntaxe Razor ou WebForms. Les deux sont pris en charge et si une équipe en utilise déjà une et que cela fonctionne bien pour eux, ils devraient probablement s'en tenir à cela. Vous ne devriez pas simplement rejeter quelque chose parce que c'est "vieux". (Incidemment, la question originale, et cette réponse, ont été postées en 2008 - Avant le rasoir est venu à ASP.NET MVC) –

+2

C'est une préférence personnelle, mais c'est la mauvaise préférence personnelle – Jonesopolis

13

Il suffit d'écrire < input type = "button" ... /> à votre code html. Il n'y a rien de spécial avec les contrôles html.

+0

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

-12

est l'équivalent ASP.NET du HTML.Button. Il générera par défaut un <input type="button">. (Ceci est la classe System.Web.UI.WebControls.Button)

+4

Pas utile, la question concernait ASP.NET MVC , pas de formulaires Web. –

4

Plusieurs méthodes d'extension ont été déplacées vers Microsoft.Web.Mvc, qui est la DLL MVC Futures. Vous pourriez vouloir regarder là pour des choses qui ont disparu.