2017-10-19 12 views
0

팀에 공통 구성 요소가있는 여러 웹 응용 프로그램 프로젝트가 있습니다. 다중 인스턴스를 유지하기 위해 공통 클래스와 웹 프로젝트를 포함하는 공통 소스를 설정했습니다. 웹 프로젝트에서 주 웹 응용 프로그램의 링크 된 파일로 공유되는 MasterPage, 페이지 및 사용자 컨트롤을 사용할 수 있습니다. 각 공유 프로젝트는 솔루션의 일부로 포함됩니다. 솔루션은 성공적으로 빌드되지만 웹 응용 프로그램의 페이지를 열면 서버 유형이 'Common.Controls.Master'형식이 모호합니다. 어셈블리 'C : .... \ bin에서 올 수 있습니다. \ Common.Controls.DLL '또는 어셈블리'C : .... \ bin \ AppWeb.DLL '에서. 명시 적으로 형식 이름에 어셈블리를 지정하십시오. "솔루션간에 프로젝트간에 마스터 페이지를 공유 할 때 발생하는 문제

실제 Common.master는 루트의 Common.Controls 프로젝트에 있습니다. 마스터 페이지에 대한 링크 파일은 AppWeb 프로젝트에 있습니다.

나는 해결책을 찾았으며 이걸 발견했다. How to share Master Pages between my projects 나는 내가하는 일을 꽤 많이하고있다.

다른 옵션은 What is the best way to share MasterPages across projects입니다. 나는이 방법을 시도하지 않았다.

링크 된 파일을 사용하면 효과가 있음을 확신했습니다.

이 오류를 해결하는 데 도움을 주셔서 감사합니다.

답변

0

저는 최근에 다른 공유 클래스에서 매우 비슷한 문제에 직면했습니다. MasterPage의 초기 위치가 AppWeb 프로젝트에 있었고 Common.Controls 프로젝트 아래로 옮겨 졌을 가능성이 있습니까? 이 경우 빌드는 이전 dll을 지우지 않으므로 사용자가보고있는 오류가 발생합니다. 이 경우 프로젝트의 bin 폴더에있는 모든 파일을 간단히 수동으로 삭제하고 다시 빌드하면 문제가 해결됩니다. 이 도움이 되었기를 바랍니다.

+0

프로젝트 리팩터링을 시작하고이 경로를 계획 했으므로 AppWeb에는 마스터 페이지가 없습니다. 나는 솔루션을 청소하고 다시 만들었지 만 여전히 같은 문제를 겪고 있습니다. – devwithabeer