Asp.Net MVC:模型是否应该创建Html-Markup

时间:2014-10-30 11:32:37

标签: c# asp.net-mvc razor model

通常的做法是,asp.net mvc x中的模型可以创建/生成/返回html标记吗?

模型 - 类:

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)

1 个答案:

答案 0 :(得分:2)

根据MVC模式,Model应该是愚蠢的,应该更多地包含业务域对象。从技术上讲,可以在模型中以HTML格式发送数据,但理想情况下,View应该负责发送HTML标记......模型将数据插入到该HTML标记中。