我在我的ASP.NET Core MVC应用程序中选择了“Xml documentation file
”,它将“bin\Debug\net452\MyProject.xml
”显示为输出文件夹。问题是该文件在发布文件夹中不存在。我需要额外的东西来包含它吗?使用.NET Core 1.0-RC4和VS.NET 2017 RC4(新的csproject格式)。XML文档文件不包含在发布文件夹中
回答
显然这不是用dotnet发布实现的,而是在不久的将来:https://github.com/dotnet/sdk/issues/795
如果你使用project.json
然后您就可以控制都包含和发布过程中排除的文件和文件夹:
"publishOptions": {
"include": [
"wwwroot",
"appsettings.json",
"appsettings.*.json",
"web.config"
],
"exclude": [
"wwwroot/less"
]
}
对于.csproj
基于项目here is a good resource用于复制旧project.json
设置XML,例如:
<ItemGroup>
<Compile Include="..\Shared\*.cs" Exclude="..\Shared\Not\*.cs" />
<EmbeddedResource Include="..\Shared\*.resx" />
<Content Include="Views\**\*" PackagePath="%(Identity)" />
<None Include="some/path/in/project.txt" Pack="true" PackagePath="in/package.txt" />
<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>
对不起忘了补充一点,我使用.NET的核心1.0 RC4和VS.NET 2017 RC4(新的csproject格式,没有project.json)。 – dstr
@dstr更新了我的答案,以包含一些'.csproj'信息,这些信息可能会帮助您指出正确的方向。 – Polynomial
project.json
file s HOULD有"xmlDoc": true
下"buildOptions"
:
{
"buildOptions": {
"xmlDoc": true
}
}
如果你有这样的代码中的文档:
/// <summary>
/// Documentation for FooClass
/// </summary>
public static class FooClass
{
// ...
}
那么你应该有一个xml
文件在你的输出看起来像这样:
<doc>
<assembly>
<name>Foo.Bar</name>
</assembly>
<members>
<member name="T:Foo.Bar.FooClass">
<summary>
Documentation for FooClass
</summary>
</member>
</members>
</doc>
很抱歉忘了补充一点,我使用.NET Core 1.0-RC4和VS.NET 2017 RC4(新的csproject格式,没有project.json)。此外,我已经在我的输出文件夹中生成了xml,但它没有发布到发布文件夹。 – dstr
测试在1.1.2
ResolvedFileToPublish
是发布用途知道哪些文件就摆在发布文件夹中的项目。 Include
是文件的来源,而RelativePath
是文件应放置在发布文件夹内的位置。 h正如其名称所暗示的那样 - 它是收集所有待发布文件的目标。
<Target Name="CopyDocumentationFile"
AfterTargets="ComputeFilesToPublish">
<ItemGroup>
<ResolvedFileToPublish Include="@(FinalDocFile)"
RelativePath="@(FinalDocFile->'%(Filename)%(Extension)')" />
</ItemGroup>
</Target>
就在这个目标添加到您的.csproj
并确保 GenerateDocumentationFile
设置为true
<GenerateDocumentationFile>true</GenerateDocumentationFile>
https://github.com/dotnet/sdk/issues/795#issuecomment-289782712
- 1. 〜/ .felix文件夹中包含的文件
- 2. 在另一个XML布局文件中包含现有的XML布局文件
- 3. 如何在doxygen文档中包含文件夹?
- 4. 'AppData'文件夹不存在(包含HAXM文件夹)(Android Studio)
- 5. 文档文件夹中存在文件
- 6. 删除不包含.zip扩展名的归档文件夹内的文件夹
- 7. Autotools发布中包含哪些文件
- 8. 在发布期间包含文件
- 9. 不能在其他文件夹中包含FXML文件
- 10. 为什么spark文件不包含在publishe文件夹中?
- 11. Maven:在构建资源文件夹中包含文件夹
- 12. 删除文件夹和包含文件
- 13. ember文件夹只包含gitkeep文件
- 14. 删除包含文件的文件夹
- 15. Git应该只包含主文件夹的文件夹/文件
- 16. 文件夹不包含在JHipster建立
- 17. 探索包含文件夹而不是打开包含文件夹
- 18. 发布事件我的文档文件夹通用
- 19. 删除包含的文件夹不是文件夹它自己?
- 20. 包含xml文档文件中的常见内容
- 21. 在另一个xml文件中包含xml文件
- 22. XCode存档不包括引用文件夹中的文件
- 23. Hadoop分布式缓存可以包含文件夹还是仅包含文件?
- 24. 在bash打开文件夹,在文件夹名包含空格
- 25. 如果文件夹2不包含文件,则将文件从文件夹1移动到文件夹2
- 26. 如何从根文件夹包含文件(包括();)到不同子文件夹中的文件?
- 27. 包含子文件夹.htaccess
- 28. 包含文件夹脚本
- 29. 包含py2exe的文件夹
- 30. .apk包含.git文件夹
代码被合并到master中。尽管如此,还没有发布:https://github.com/dotnet/sdk/pull/1062 –