Em MVC um dos métodos mais úteis é o ActionLink que nos permite criar um link, dando pelo menos a acção responsável por tratar a request. Estranhamente não existe o equivalente para botões, tipo ActionButton. Andei a pesquisar no meu amigo Google e depois ter lido alguns disparates e algumas resoluções o mais rebuscadas que se possam imaginar com quilos de código css, para algo tão simples como ter um botão, cheguei a uma implementação minha que para mim é algo simples e eficaz.
public static IHtmlString ActionButton(this HtmlHelper htmlHelper,
string text, string actionName, string controllerName, object routeValues) { UrlHelper urlHelper = ((Controller)htmlHelper.ViewContext.Controller).Url; string url = urlHelper.Action(actionName, controllerName, routeValues); var input = new TagBuilder("input"); input.Attributes.Add("type", "button"); input.Attributes.Add("onclick",
string.Format("javascript:location.href=('{0}')", url)); input.Attributes.Add("value", text); return MvcHtmlString.Create(input.ToString()); }
Sem comentários:
Enviar um comentário