[英]namespace not found!
我創建了一個名為Foo
的解決方案。 添加了一個名為Foo.Common
的 class 庫添加了一個控制台應用程序以從名為ConsoleApp
調用庫代碼。
我從ConsoleApp
引用了Foo.Common
並輸入:
using Foo.Common;
public class Program
{
CommonClass c = new CommonClass();
static void Main(string[] args)
{
}
}
把這個拿回來:
Error 1 The type or namespace name '**Foo**' could not be found (are you missing a using directive or an assembly reference?) Z:\Foo\Solution1\ConsoleApplication1\Program.cs 3 11 ConsoleApplication1
為什么我會得到這個?
這是怎么回事?
確保
ConsoleApp項目有對Foo.Common項目的引用(不要瀏覽 Foo.Common.dll),
該文件包含聲明CommonClass
的命名空間的using
指令,並且
CommonClass
被聲明為public
。
所以你的文件應該是這樣的:
Foo.Common項目中的CommonClass.cs :
namespace Foo.Common
{
public class CommonClass
{
public CommonClass()
{
}
}
}
ConsoleApp項目中的Program.cs :
using Foo.Common;
namespace ConsoleApp
{
public class Program
{
public static void Main()
{
CommonClass x = new CommonClass();
}
}
}
確保在您的項目設置下,目標框架設置為 .NET Framework 4 而不是 .NET Framework 4 Client Profile。 當它設置為客戶端配置文件時,我得到了同樣的行為,一旦我將它設置為常規的 .NET 框架 4,它就得到了修復。
看起來 Foo Bar 出現了這個錯誤,因為他的項目的目標框架設置為客戶端配置文件。
只是想我會再添加一個“解決方案”——我創建了一個針對 4.5 框架的庫。 我的舊項目正在啟動 4 框架。 我得到了這個錯誤。
將舊項目更改為 4.5 使其工作。
右鍵單擊新的控制台應用解決方案/項目並添加引用並添加包含 Foo 命名空間的項目
您是否添加了對庫的引用? 在控制台項目的“參考”下查看。 如果它不存在,則需要添加它。
我將此作為評論發布,但我想在這里擴展它。 可能發生的情況是它看到 using 作為語句而不是關鍵字。 看來您有以下內容:
using System;
namespace TestNamespace
{
using Foo.Common;
public Class { }
}
嘗試
using System;
using Foo.Common;
namespace TestNamespace
{
public Class { }
}
反而。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.