簡體   English   中英

如何使用 roslyn 獲取項目的默認命名空間?

[英]How get default namespace of project with roslyn?

我有一個 C# 項目。 我已將 NameSpaceDeclarationSyntax 例如 namespace1 重命名為 namespace2 。 當我用 Visual Studio 和 roslyn api 編譯這個項目時,我發現 Visual Studio 已經將項目的所有資源嵌入到 namespace2 中,只是屬性文件夾中的資源文件嵌入了項目的默認命名空間。

我已經用 roslyn 嵌入了 namespace2 的所有資源,因此它不會運行。

引發了以下異常:

找不到適合指定文化或中性文化的任何資源。 確保 namespace1.properties.Resources.resources 已正確嵌入或鏈接到程序集“assemblyname”...

我必須更改項目的默認名稱空間或獲取默認名稱空間並嵌入其中,但我不知道如何查找或更改項目的默認名稱空間?

默認命名空間是 MSBuild 和 Visual Studio 的屬性,而不是編譯器本身的屬性。 因此,您不會在 Roslyn API 中找到它。

相反,您可以直接在項目文件中更改<RootNamespace>元素。

您可以在此處查看 Roslyn 的 Visual Studio 層如何獲取默認命名空間。

暫無
暫無

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

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