我问这个问题是因为我的解决方案中出现编译错误: “GiftCard”是一个“命名空间”,但像“类型”一样使用
我尝试添加一个 using 指令,例如: 使用 GiftCard.Data.Entity;
这是找到 GiftCard 的正确命名空间,但错误并没有消失。当我在代码中添加完全限定名称时,即 GiftCard.Data.Entity.GiftCard
...然后错误消失,代码编译。
但我想知道为什么 using 指令不起作用。我不想每次需要使用该类型时都用完全限定名称来混淆我的代码。不知何故,错误消息说我在某处将 GiftCard 定义为命名空间。那么我如何才能找到我的解决方案中的所有命名空间,以便我知道它的定义位置,因为我需要删除或重命名 GiftCard 命名空间。
最佳答案
您的问题与您的问题不太相关。
问题
The Framework Design Guidelines说 Do not use same name for a namespace and a type in that namespace
。
For example, do not use Debug as a namespace name and then also provide a class named Debug in the same namespace. Several compilers require such types to be fully qualified.
即:
namespace Debug
{
public class Debug{ … }
}
或
namespace MyContainers.List
{
public class List { … }
}
为什么会这样? Do not name a class the same as its namespace
问题的答案
查看 -> 对象浏览器(快捷键:Ctrl+Alt+J)
关于c# - 如何在我的 Visual Studio 解决方案中找到所有命名空间?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31644527/