2016-09-18 4 views
1

솔루션을 모두 추가 한 후 사용 지시문 또는 어셈블리 참조가 2 개 프로젝트를 포함 CodeRepository 클래스가 포함그들에게

Geo.Data 프로젝트, 네임 스페이스 Geo.Data

ConsoleApp1 프로젝트에서 정의를하는 I 다른 프로젝트에서 CodeRepository를 인스턴스화하려는 Program.cs 클래스가 있어야합니다.

그래서 ConsoleApp1에 프로젝트 참조 인 Geo.Data \ Bin \ Debug \ Geo.Data.dll의 어셈블리를 추가합니다. 또한 Program.cs 위에 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 네임 스페이스의 충돌입니까? 감사. 또한 using 지시문에 첫 번째 문자 "G"를 쓴 후에 Intellisense를 통해 Geo를 사용하도록 제안되었습니다. 그래서 그 시점에서 그것을 찾는다. 문제는 프로젝트를 실행할 때입니다. 오류는 using 지시문을 가리 킵니다. 감사!

+1

geo.data .net 종속성이 ConsoleApp1 프로젝트보다 높습니까? Geo.Data의 – rlee

+0

ConsoleApp1에서 인스턴스화하려는 클래스의 액세스 수준은 무엇입니까? – Mansoor

+0

Visual Studio를 IDE로 사용하고 있습니까? Visual Studio에서 마우스 오른쪽 버튼을 클릭하여 ConsoleApp1의 Geo.Data 프로젝트를 참조한 다음 참조하십시오. – Mansoor

답변

0

Geo.Data를 라이브러리로 참조하려면 솔루션 탐색기에서 프로젝트를 마우스 오른쪽 버튼으로 클릭하고 속성을 선택한 다음 출력 유형을 클래스 라이브러리로 변경해야합니다 (Geo.Data는 이 작업을 수행하면 솔루션의 일부인 Geo.Data를 다른 곳에 구축하십시오.

Geo.Data를 솔루션 (편집, 업데이트, 동시에 빌드)에 포함 시키려면 ADD REFERENCE로 참조를 추가하고 참조 창의 오른쪽에서 공유 프로젝트를 선택하십시오 .

관련 문제