1

所以我有一个小的 html 表(日历),我需要返回到一个页面。在父页面级别,我使用

@{Html.RenderAction("日历", "GlobalShared");}

现在,问题是我尝试了以下 4 种返回 html 的方法,它们都有效

1.字符串

        [ChildActionOnly]
        public String Calendar()
        { 
               return GetCalendarHTML()
        }

2.MvcHtmlString

        [ChildActionOnly]
        public MvcHtmlString Calendar()
        { 
               return  MvcHtmlString.Create(GetCalendarHTML());
        }

3. 内容结果

        [ChildActionOnly]
        public ActionResult Calendar()
        { 
               return  Content(GetCalendarHTML());
        }

4. 部分视图结果

        [ChildActionOnly]
        public PartialViewResult Calendar()
        { 
               return  PartialView("_Calendar", GetCalendarHTML());
        }

        _Calendar.cshtml

        @model String
        @{
           Layout = null;
         }

         @Html.Raw(Model)

哪种方式是返回 html 的正确方式(或更好的方式),为什么?

谢谢

4

1 回答 1

0

PartialViewResult 是您正在寻找的,因为它用于分解页面的组件并制作更小的部分,这是设计的目的。从我的经验来看,这也是我所看到的经常使用的东西。

http://msdn.microsoft.com/en-us/library/dd410269(v=vs.98).aspx

“渲染部分视图,它定义了可以在另一个视图中渲染的视图部分”

于 2013-06-18T21:32:59.430 回答