如何更改.NET Core项目中`wwwroot`文件夹的图标?

时间:2017-06-11 03:33:29

标签: c# asp.net-core .net-core visual-studio-2017

在Visual Studio 2017中,当我想使用以下任一标准.NET Core项目模板从头创建ASP.NET核心Web应用程序时:

  • 控制台应用程序(.NET Core)
  • 类库(.NET Core)

这些项目模板;显然不会包含wwwroot文件夹。因此,当我将文件夹添加到我的项目时,它看起来像(并且表现得像)一个标准文件夹:

.NET Core Console App

使用 ASP.NET Core Web Application 项目模板创建它时,wwwroot文件夹如下所示:

ASP.NET Core Web Application

问题 - 外观(图标)

  

如何将wwwroot文件夹的图标更改为 ASP.NET Core Web Application 项目模板中的图标?

其他问题 - 行为(将文件复制到输出目录)
在标准的.NET Core项目中,我必须将其添加到我的.csproj文件中:

<ItemGroup>
  <Content Include="wwwroot\**" CopyToOutputDirectory="PreserveNewest" />
</ItemGroup>

以便将我的所有文件从wwwroot文件夹复制到输出目录,类似于ASP.NET Core Web Application项目。我查看了ASP.NET核心Web应用程序的.csproj文件,但没有看到类似的内容。

我假设主要问题的答案也将为此提供答案,因为项目模板明显不同。 我似乎无法在线查找资源以帮助我自己手动编辑。

提前致谢。

2 个答案:

答案 0 :(得分:12)

在阅读宣布Visual Studio 2017中新工具的this page之后,我发现它实际上是可行的。

  

我注意到ASP.NET Core Web Application项目在Project文件的.csproj节点下使用了不同的值。

<Project Sdk="Microsoft.NET.Sdk.Web">

标准项目模板使用Microsoft.NET.Sdk,如下所示:

<Project Sdk="Microsoft.NET.Sdk"> ← ← ← ← //change this to Microsoft.NET.Sdk.Web

  <PropertyGroup>
    <OutputType>Exe</OutputType>
    <TargetFramework>netcoreapp1.1</TargetFramework>
  </PropertyGroup>

</Project>

将值更改为 Microsoft.NET.Sdk.Web并保存csproj文件后,项目自行升级,wwwroot文件夹自动添加到我的项目中(但已排除),如下所示:

Step1

然后我将它包含在项目中,现在:

Step2

大!我希望这个答案有助于其他人。

答案 1 :(得分:1)

确保此行包含在下面的ItemGroup中

 <Folder Include="wwwroot\" />