Estoy migrando mi aplicación de asp.net mvc a mvc versión 2 y estoy teniendo el siguiente problema.ASP.NET MVC 2 actionlink rompiendo después de la migración de MVC versión 1
que tienen enlaces de paginación < < <> >> que incluir en cada página. De este modo:
<% Html.RenderPartial("PagingControl", Model); %>
Existen en un ascx de la siguiente manera.
<%@ Control Language="C#" Inherits="System.Web.Mvc.ViewUserControl<BankingDB.Controllers.Utility.IPagedSortedObject>" %>
<div class="paging">
<div class="previous-paging">
<!- error!! -><%= Model.HasPreviousPage ? Html.ActionLink("<<", "Index", Model.buildParams(1)) : "<<"%>
<%= Model.HasPreviousPage ? Html.ActionLink("<", "Index", Model.buildParams(Model.PreviousPageIndex)) : "<"%>
</div>
<div class="paging-details">
Showing records <%= Model.BaseRecordIndex %> to <%= Model.MaxRecordIndex %> of <%= Model.TotalRecordCount %>
</div>
<div class="next-paging">
<%= Model.HasNextPage ? Html.ActionLink(">", "Index", Model.buildParams(Model.NextPageIndex)) : ">"%>
<%= Model.HasNextPage ? Html.ActionLink(">>", "Index", Model.buildParams(Model.PageCount)) : ">>"%>
</div>
</div>
Cuando intento acceder a la página me sale el error:
CS0173: Tipo de expresión condicional no se puede determinar porque no hay una conversión implícita entre 'System.Web.Mvc.MvcHtmlString' y ' string '
El error está marcado arriba y parece estar en el enlace de acción. Incluir el nombre del controlador no ayuda. ¿Algunas ideas?
Muchas gracias. Tenga en cuenta que debería ser MvcHtmlString.Create ("<<") aunque no puede crear una nueva MvcHtmlString usando el constructor. – Alistair
Solo una nota que también puede agregar '.ToString()' al 'Html.ActionLink (...)' para obtener una cadena adecuada. En ese caso, no necesitaría crear un nuevo MvcHtmlString para el "<<" en el lado falso de ese ternario ... – Funka