public static string RazorViewRender(object model, string filePath)
{
var sw = new StringWriter();
var context = new HttpContextWrapper(System.Web.HttpContext.Current);
var routeData = new RouteData() ;
HomeController home= new HomeController();
var controllerContext = new ControllerContext(new RequestContext(context, routeData), home);
var razor = new RazorView(controllerContext, filePath, null, false, null);
razor.Render(new ViewContext(controllerContext, razor, new ViewDataDictionary(model), new TempDataDictionary(), sw), sw);
return sw.ToString();
}
在此代码中
razor.render
行程序显示错误
“ RouteData必须包含一个名为'controller'的项,并带有一个 非空字符串值。'
我猜它找不到我的家庭控制器,我的项目有区域。我该如何解决这个问题。
答案 0 :(得分:0)
您需要添加路线数据。异常告诉你一切。
var routeData = new RouteData() ;
routeData.Values.Add("Controller", "Home");
routeData.Values.Add("Action", "Index");