簡體   English   中英

C# Visual Studio:在程序集中嵌入 XML 文檔文件

[英]C# Visual Studio: Embed XML Documentation File in Assembly

我希望將 Visual Studio 生成的自動生成的 XML 文檔文件作為嵌入式資源添加到我的項目的程序集中,但我不確定如何 go 解決這個問題。 我知道我可以手動更改.csproj文件以添加資源,使用類似:

<EmbeddedResource Include="Path\To\File\MyEmbeddedResource.meta.xml">
    <Link>MyEmbeddedResource.meta.xml</Link>
</EmbeddedResource>

但我不知道它如何與構建過程交互,或者我將為 XML 文件提供什么路徑,因為它本身位於構建文件夾中?

我知道我可以使用上面的代碼片段將任意文件添加為.dll的嵌入式資源,但是如何確保文檔文件是最新的,並使用最新版本中生成的文件?

這里的總體目標是通過反射訪問文檔,這樣.dll具有較少的外部文件依賴性。 鑒於該項目本身是一個 Class 庫,我希望當該程序集包含在另一個項目中時,任何答案都不會中斷。

嵌入的資源文件沒有放在 build output 文件夾中,它包含在 DLL 文件的二進制 output 中。 就像您將定義一個公共常量字符串,其內容是 XML 文件的內容。 但是可以通過https的解決方案訪問嵌入式資源://stackoverflow.com/a/3314213/593045

resouceName 取決於您將 XML 文件放置在哪些子文件夾中以及如何調用它 - 這定義了資源名稱。 因此,我將使用一個基本文件夾,例如“embeddedXmlDoc”,並在其中使用相同的文件夾結構(命名空間中的每個文本的文件夾),如您要記錄的類及其命名空間。 然后,您只需使用它們的命名空間和 class 名稱即可找到正確的文件。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM