我正在尝试IRazorViewEngine
在控制台应用程序中使用<Project Sdk="Microsoft.NET.Sdk">
(不是)在内存<Project Sdk="Microsoft.NET.Sdk.Web">
中呈现页面。.cshtml
我在ServiceProvider
. 在调用以下行时,我得到一个CompilationFailedException
:
_viewEngine.GetView(directory, name, true);
例外:
Microsoft.AspNetCore.Mvc.Razor.Compilation.CompilationFailedException:发生一个或多个编译失败:
kmcajniq.bah(4,20):错误 CS0400:在全局命名空间中找不到类型或命名空间名称“Microsoft”(您是缺少程序集引用?)
kmcajniq.bah(5,19):错误 CS0400:在全局命名空间中找不到类型或命名空间名称“Microsoft”(您是否缺少程序集引用?)
kmcajniq.bah(4,82 ):错误 CS0518:未定义或导入预定义类型“System.Type”
kmcajniq.bah(4,115):错误 CS0518:未定义或导入预定义类型“System.String”
kmcajniq.bah(4,132):错误 CS0518:预定义未定义或导入类型“System.String”
kmcajniq.bah(5,81):错误 CS0518:未定义或导入预定义类型“System.String”
和其他更多缺失System
和Microsoft
类型。
但是,当我将项目 sdk 更改为Microsoft.NET.Sdk.Web
一切正常时。
Microsoft.NET.Sdk
缺少什么,Microsoft.NET.Sdk.Web
Razor 渲染有效?