Asp.net mvc 将asp.net mvc视图解析为字符串

Asp.net mvc 将asp.net mvc视图解析为字符串,asp.net-mvc,razor,Asp.net Mvc,Razor,我正在调用一个函数,该函数试图从MVC razor视图获取HTML输出,并将HTML输出作为字符串传递给我 这是我的密码: Dim ControllerContext As New ControllerContext ControllerContext.RouteData.Values.Add("id", reqID) ControllerContext.RouteData.Values.Add("controller", "po") Dim viewResult As ViewEngineRe

我正在调用一个函数,该函数试图从MVC razor视图获取HTML输出,并将HTML输出作为字符串传递给我

这是我的密码:

Dim ControllerContext As New ControllerContext
ControllerContext.RouteData.Values.Add("id", reqID)
ControllerContext.RouteData.Values.Add("controller", "po")
Dim viewResult As ViewEngineResult = ViewEngines.Engines.FindPartialView(ControllerContext, "print")
Dim viewContext As ViewContext = New ViewContext(ControllerContext, viewResult.View, ViewData, TempData, sw)
viewResult.View.Render(viewContext, sw)
viewResult.ViewEngine.ReleaseView(ControllerContext, viewResult.View)

Dim strHTML As String = sw.GetStringBuilder().ToString()
它在viewResult.View.RenderviewContext,sw行失败,错误为-System.NotImplementedException:方法或操作未实现


我真的希望能够从CRON作业/脚本调用它。不仅来自MVC页面的HTTP POST。也许这会有所不同?因为,我以前在控制器中从HTTP POST方法调用它时,它就可以工作了。现在,从我的脚本中,我正在调用一个VB函数,该函数驻留在一个单独的类中,该类使用驻留在我的POController中的FindPartialView内容调用该函数。

可能与此错误重复,我在那里看不到有关此错误的任何信息…它在viewResult.View.RenderviewContext行失败,错误为-System.NotImplementedException的软件:该方法或操作未实现。您打算从脚本调用它吗?这是从Web服务器运行,然后使用WebClient点击URL,还是要将其编译为命令行应用程序,还是。。。?您的具体错误是,您没有传递真正的ControllerContext,这个空的Dim ControllerContext作为新的ControllerContext上下文,只是无法飞行。相反,正确地执行它似乎是可行的: