Daa*_*win 6 razor razorengine asp.net-core-mvc
我试图在不使用Web请求的情况下从视图中呈现html.我需要HTML作为字符串,在内部,我不希望提供它.
viewEngine.FindView()返回一个viewEnineResult,显示未找到任何视图.它显示搜索它看起来像这样的位置:
/Views//PDFOperationsReportView.cshtml
/Views/Shared/PDFOperationsReportView.cshtml
(观察第一行中的双正斜杠)
文件结构(我将其放入HTML片段,因为我无法在此编辑器中正确设置文本格式)
Project
Folder
Subfolder
CodeFile.cs
Views
PDFOperationsReportView.cshtmlRun Code Online (Sandbox Code Playgroud)
代码:
var viewName = "PDFOperationsReportView";
var actionContext = GetActionContext();
var viewEngineResult = _viewEngine.FindView(actionContext, viewName, false);
if (!viewEngineResult.Success)
{
throw new InvalidOperationException(string.Format("Couldn't find view '{0}'", viewName));
}
var view = viewEngineResult.View;
Run Code Online (Sandbox Code Playgroud)
我遇到过同样的问题.我在这里找到了答案:GitHub aspnet/Mvc Issue#4936
基本上,使用GetView而不是FindView像这样:
var viewResult = razorViewEngine.GetView(viewName, viewName, false);
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
4310 次 |
| 最近记录: |