Car*_*bre 6 asp.net-mvc visual-studio asp.net-core visual-studio-2017
我有一个nuget包,它有自己的mvc控制面板,带有控制器,视图和路径.
此nuget包在其他.net核心Web应用程序中导入.
在Visual Studio 2015中,使用.net核心,我使用以下代码将视图编译为资源,允许通过razor引擎找到它们然后正确呈现.
在project.json(nuget):
"buildOptions": {
"embed": "**/Views/**/*.cshtml"
}
Run Code Online (Sandbox Code Playgroud)
在Startup.cs(Web应用程序):
public void ConfigureServices(IServiceCollection services)
{
services.Configure<RazorViewEngineOptions>(options =>
{
options.FileProviders.Add(new CompositeFileProvider(
new EmbeddedFileProvider(
typeof(HomeController).GetTypeInfo().Assembly,
"Some.Namespace"))
);
});
return new IuguPortalBuilder(services);
}
Run Code Online (Sandbox Code Playgroud)
在Visual Studio 2017中,project.json文件已经不存在了,我无法找到一种在nuget包中嵌入我的视图的新方法.
我怎样才能嵌入我的观点?
Dmi*_*try 14
在Solution Explorer右键单击所需的文件,单击Properties并在打开的窗口中设置Build action为Embedded resource- 所有像过去一样:)
这将为您的*.csproj文件创建以下行:
<ItemGroup>
<EmbeddedResource Include="Views\Home\Index.cshtml" />
</ItemGroup>
Run Code Online (Sandbox Code Playgroud)
现在,MSBuild将此文件作为嵌入式资源添加到程序集中.
| 归档时间: |
|
| 查看次数: |
4819 次 |
| 最近记录: |