簡體   English   中英

命名空間在其他項目中不可用

[英]Namespace not available in other project

我創建了一個 C# 控制台應用程序。 在那個應用程序中,我有很多命名空間。

例如:

namespace com.xyz.foo.bar
{
}

namespace com.xyz.abc.def
{
}

當我將此控制台應用程序的引用添加到 WCF 服務項目中時,某些命名空間無法導入。 即從上面的例子我可以得到com.xyz.foo.bar命名空間但是com.xyz.abc.def命名空間不可用。

我不明白為什么會這樣。

如果我從“對象瀏覽器”打開控制台應用程序的可執行文件,我可以看到所有命名空間。

誰能解釋這件事背后的原因?

我有一個類似的問題,即使在同一個解決方案中有一個項目引用,類型是公共的等等,也沒有找到一個命名空間。

事實證明,我需要將“Target Framework”更改為“.NET Framework 4”而不是“.NET Framework 4 Client Profile”。 我沒有費心去弄清楚為什么這會導致“未知名稱空間”錯誤,但它解決了我的問題。

約翰

您的命名空間必須具有標記為public的類等

namespace com.xyz.foo.bar
{
    class MyClass
    {
    }
}

namespace com.xyz.abc.def
{
    public class AnotherClass
    {
    }
}

bar命名空間將不可見,而def將不可見(如果沒有在其中public任何其他內容)

暫無
暫無

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

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