1
Общепринятой практикой является то, что модели в asp.net mvc x могут создавать/создавать/возвращать html-разметку?Asp.Net MVC: Если модель создает Html-Markup
Модель класса:
public interface IMyModel {
MvcHtmlString GetGrid(string gridId, HtmlHelper htmlHelper);
}
public class MyModel<TRowModel> : IMyModel {
IList<TModel> GridItems{get;set;}
public MvcHtmlString GetGrid(string gridId, HtmlHelper helper){
WebGrid<TRowModel> webGrid = new WebGrid<TRowModel>(gridId, GridItems)
return webGrid.GetHtml(helper);
}
}
Вид:
@model IMyModel
@Model.GetGrid("grid", Html)
В некоторых случаях я бы сказал, что нет проблемы с созданием HTML через модель. В этом случае мне кажется, что вы просто создаете сетку и что она не имеет ничего общего с «моделью». Метод GetGrid лучше всего будет использовать (статический?) Вспомогательный класс. –
Извините, я забыл часть со списком элементов для показа в сетке. Вот почему он не работал с html-помощником (я думаю). – Tobias
Ваш взгляд должен создавать HTML, а не модель. – janhartmann