2012-09-26 2 views
0

파트너 사무실 솔루션의 일부 프로젝트를 우리 솔루션에 통합하기 시작했습니다. 이 프로그램은 C# winform 응용 프로그램입니다.형식이 참조되지 않은 어셈블리에 정의되었습니다.

프로그램이 컴파일되고 모든 것이 정상적으로 진행되었지만 어제 내가 다시 빌드하고 아무데도 오류가 발생했습니다 " 'Namespace.MainFrameDisplay'유형이 참조되지 않은 어셈블리에 정의되어 있습니다. 어셈블리에 대한 참조 추가 OtherAssembly, Version = 1.7.0.0, Culture = neutral, PublicKeyToken = 52af1880d3cd7291 " (내가 알 수있는 한, OtherAssembly는 원래 프로젝트의 참조로 사용되지 않습니다. 어셈블리와의 호환성 문제가 있습니다. 및 OtherAssembly, OtherAssembly 그물 100 오류 추가). "암시 적으로 'Namespace.MainFrameDisplay'형식을 'Namespace.MainFrameDisplay'로 변환 할 수 없습니다 [c : \] 데브 \ 프로그램 \ 빈 \ 디버그는 \ Assembly.dll]

오류에 대한 사이비 코드의 조각은 다음과 같습니다

private MainFrameDisplay _MainFrame; //definition 
_MainFrame = this.Mainframe; // error is thrown here 
_MainFrame.Parent.Controls.Add(_NotifyBar); 

내가 정의를 삭제하면

는 오류가 남아있다.
오류가 발생한 행을 제거하면 정상적으로 컴파일됩니다. _MainFrame.Parent를 호출하는 경우에도 마찬가지입니다.

이 번거로운 프로젝트를 삭제/제거하고 원본의 새 복사본을 압축 해제/추가했지만 문제가 남아 있습니다. 어떤 생각이나 제안?

답변

0

음 ... 물론 나는 게시 직후 이것을 알아 냈습니다.

(-_-)

는 그래서이 후손을위한 팁 부르 자.

위 코드에서 "this"는 기본 클래스를 참조하며 이는 우리 솔루션에 포함됩니다. 필자는 원래 기본 클래스 프로젝트의 참조를 내 버전과 비교했으며 실수로 "어셈블리"가 아닌 "OtherAssembly"에 대한 참조를 실수로 포함 시켰습니다. (실제 이름은 매우 비슷합니다.)

잘못된 참조는 기본 클래스에서 문제를 일으키지 않았지만 파생 클래스에서 충돌을 일으켰습니다. 전환, 고정, 성공적으로 컴파일되었습니다.

관련 문제