2017-03-10 86 views
24

有文件之前aspdotnet1.0包括/上project.json文件ASP.NET核心:排除或包括上发布

{ 
    "exclude": [ 
    "node_modules", 
    "bower_components" 
    ], 
    "publishExclude": [ 
    "**.xproj", 
    "**.user", 
    "**.vspscc" 
    ] 
} 

哪里是在ASP.NET 1.1的核心本节排除部分(没有project.json)? .csproj文件或.pubxml上是否有类似的部分?

回答

40

documentation:如果你想指定,例如,一些文件即可与您的应用程序发布,您仍然可以使用已知的机制csproj为(例如<Content>元素)。

有一个CopyToPublishDirectory属性为ItemGroupelements确定是否将文件复制到发布目录中,可以有以下值之一:

  • 始终,
  • PreserveNewest
  • 决不

请注意,也有类似的输出文件夹的属性。

例(从here):

<ItemGroup> 

    <None Include="notes.txt" CopyToOutputDirectory="Always" /> 
    <!-- CopyToOutputDirectory = { Always, PreserveNewest, Never } --> 

    <Content Include="files\**\*" CopyToPublishDirectory="PreserveNewest" /> 
    <None Include="publishnotes.txt" CopyToPublishDirectory="Always" /> 
    <!-- CopyToPublishDirectory = { Always, PreserveNewest, Never } --> 
</ItemGroup> 

如果你是多么有趣project.json -.csproj迁移使用CopyToPublishDirectory属性迁移发布选项,你可以考虑在DOTNET CLI回购MigratePublishOptionsRule类。

+0

MigratePublishOptionsRule链接已死亡。 – Tagc

+1

@Tagc谢谢,更新 – Set

1

编辑.csproj文件以手动排除要发布的文件/文件夹。

您也可以参考this

对于网络部署看到https://blogs.msdn.microsoft.com/webdev/2010/04/22/web-deployment-excluding-files-and-folders-via-the-web-applications-project-file/

project.json现在已被csproj取代。您可以通过https://www.stevejgordon.co.uk/project-json-replaced-by-csproj了解更多信息。

对于升级现有的.NET Core 1.0项目或使用使用.NET Core 1.1,您可以阅读https://blogs.msdn.microsoft.com/dotnet/2016/11/16/announcing-net-core-1-1/

+0

是的,我知道的csproj代替project.json,但是包含/排除secion在哪里? – hcp

+0

更新了我的答案。 –