2016-09-18 35 views
1

溶液后含有2个项目:缺少using指令或程序集引用将它们相加两个

Geo.Data项目,它包含CodeRepository类,在命名空间Geo.Data

ConsoleApp1项目定义,其中我有Program.cs类,我想从其他项目实例化Code​​Repository。因此,我添加到ConsoleApp1 - 项目引用 - 从Geo.Data \ Bin \ Debug \ Geo.Data.dll;程序集中的组件;我还在Program.cs的顶部添加了一个using指令:using Geo.Data;

using Geo.Data; 

namespace ConsoleApp1 
{ 
    class Program 
    { 
     static void Main(string[] args) 
     { 
      Geo.Data.CodeRepository x = new Geo.Data.CodeRepository(); 
     // here, if I add x. after the dot I can all methods listed (from class CodeRepository) 
    } 
    } 
} 

CodeRepository的相应的颜色,所以它认为是Geo.Data

不过,我跑的解决方案时,得到一个错误的一部分。只是不明白我在做什么错:

类型或命名空间名称“地理”找不到(是否使用指令或程序集引用缺少 ?)ConsoleApp1 \ Program.cs的

如前所述,我已经添加了使用Geo.Data和对Geo.Data的程序集引用。这是diff命名空间的冲突还是什么?谢谢。 此外,在使用指令中写入第一个字母“G”之后,通过intellisense向我建议使用Geo;所以在那一点上它确实找到了它。问题是我运行该项目时。错误指向using指令。谢谢!

+1

geo.data .net依赖项是否高于ConsoleApp1项目? – rlee

+0

在Geo.Data中您尝试在您ConsoleApp1中实例化的类的访问级别是什么? – Mansoor

+0

您是否使用VisualStudio作为IDE?最好通过在VisualStudio中右击来引用ConsoleApp1中的Geo.Data项目,然后引用它。 – Mansoor

回答

0

如果要将Geo.Data引用为库,则需要右键单击解决方案资源管理器中的项目,选择PROPERTIES,然后将OUTPUT TYPE更改为CLASS LIBRARY(请注意,Geo.Data不必是你的解决方案的一部分,如果你这样做 - 你会在其他地方建立Geo.Data)。否则,如果您希望Geo.Data成为解决方案的一部分(编辑,更新,同时生成),那么请通过添加参考添加参考,并从参考窗口的右侧选择共享项目。

相关问题