1

我在VS 2017中創建了一個ASP.NET Core 2.0項目。當我發佈我的項目時,Views文件夾不存在,但wwwroot文件夾是。在netcore 2.0中發佈項目時不會複製視圖visual studio 2017

這我可以設置在下面我的.csproj文件:

<ItemGroup>                    
    <Content Update="appsettings.json;web.config" CopyToOutputDirectory="PreserveNewest"/> 
    <Content Update="Views\**\*" CopyToOutputDirectory="PreserveNewest" /> 
    <Content Update="wwwroot\**\*" CopyToOutputDirectory="PreserveNewest" /> 
</ItemGroup> 

,但沒有奏效。

回答

2

ASP.NET Core MVC具有precompilation功能,可以通過參考Microsoft.AspNetCore.Mvc.Razor.ViewCompilation軟件包進行添加。由MvcRazorCompileOnPublish屬性配置的功能啓用/禁用屬性爲.csproj。

,默認情況下,包在ASP.NET核心是增加2.0 MVC應用程序:

如果你的目標ASP.NET核2.0或更高netcoreapp2.0,到Microsoft.AspNetCore.Mvc.Razor.ViewCompilation包的引用是由Microsoft.AspNetCore.All添加的,你不需要明確地引用它。

precompilation is enabled

的ASP.NET核心2.x的項目模板隱式設置MvcRazorCompileOnPublish爲true默認情況下,這意味着該節點可以從.csproj的文件被安全地刪除:

<PropertyGroup> 
    <TargetFramework>netcoreapp2.0</TargetFramework> 
    <MvcRazorCompileOnPublish>true</MvcRazorCompileOnPublish> 
    </PropertyGroup> 

如果你去發佈輸出文件夾,你會看到dll像<project_name>.PrecompiledViews.dll witch包含你的意見。

相關問題