我在我的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 –