MVC3学习 一 ViewBag和Html.Raw

ViewBag类似于JavaScript的语法,在赋值时动态赋值,比如ViewBag.Dog=“哈哈” ,这样就会创建一个ViewBag.Dog的对象,供前端页面调用。

在调用时,前台页面用razor方式,@ViewBag 直接使用。

 public class HomeController : Controller
    {
        List<Dog> dogList = null;
        public List<Dog> InitDate()
        {
            dogList = new List<Dog>{
            new Dog(){Id=1,Name="A1"},
            new Dog(){Id=2,Name="A2"}
            };
            return dogList;
        }
        public ActionResult Index()
        {
            System.Text.StringBuilder strHtml=new System.Text.StringBuilder();
            List<Dog> list = InitDate();
            list.ForEach(d =>
            {
                strHtml.Append("<div>" + d.Name + "</div>");
            });
            ViewBag.DogStr = strHtml.ToString() ;
            return View();
        }


    }

如果直接在前端页面用@ViewBag输出,会连<DIV>标签一起输出,

所以需要使用 @Html.Raw(ViewBag.DogStr) 输出,这样浏览器会将字符串中的<DIV>标签格式化成HTML代码。

posted @ 2015-03-31 14:14  8932809  阅读(975)  评论(0编辑  收藏  举报