2012-07-18 121 views
2

我读到这个非常有用的帖子:how to render html to a string,而不是MVC3中的屏幕。将HTML呈现为来自MVC控制器的字符串

我已经在我的控制器中创建了一个函数。我现在希望能够在另一个项目中从类中调用此方法,以便我可以将此函数作为服务提供。代码如下所示:

using (var sw = new StringWriter()) 
     { 
      var viewResult = ViewEngines.Engines.FindPartialView(ControllerContext, viewName); 
      var viewContext = new ViewContext(ControllerContext, viewResult.View, ViewData, TempData, sw); 
      viewResult.View.Render(viewContext, sw); 
      viewResult.ViewEngine.ReleaseView(ControllerContext, viewResult.View); 
      return sw.GetStringBuilder().ToString(); 
     } 

我想直接调用此类而不是通过IIS。但是,然后ControllerContext为null。我能否以某种方式指定光盘上的视图?

回答

0

大多数MVC控件有一个名为"ToHtmlString();"