VS2010에 표준 웹 사이트 프로젝트 및 웹 배포 프로젝트가 있습니다. 나는이 프로젝트와 배포 패키지를 문제없이 약 4 년 동안 사용 해왔다.DLL로 컴파일하는 ASP.NET 사용자 컨트롤
배포 패키지가 '모든 페이지와 컨트롤 출력을 단일 어셈블리로 병합'으로 설정되었습니다.
지금까지 3-4 년 동안이 설정에 문제가 없었습니다! 웹 사이트의 최신 버전에서는 일부 페이지가있는 폴더와 3 개의 사용자 컨트롤이있는 다른 폴더를 추가했습니다. 이제 3 개의 사용자 컨트롤 중 2 개의 배포 패키지를 빌드하면 자신의 dll로 컴파일되고 나머지는 다음과 같이 컴파일됩니다. 예상했다. 나는 세 가지 컨트롤 모두의 코드 숨김 코드에서 네임 스페이스를 확인했으며 모두 동일하며 컴파일러에게이 두 컨트롤을 컴파일하지 말고 다른 컴파일러를 컴파일하지 못하도록 할 수는 없다.
내 컨트롤은 네임 스페이스 G2F.Forms.Controls.FormDefintitionListItemControl (폴더 구조와 컨트롤 이름을 반영 함)에 있습니다.
.FindControl ("idName에는")를 MyControl
웹 사이트를 사용할 때 모두가 잘 작동 코드 또는 같이
나는 이러한 컨트롤 중 하나에 대한 참조를 얻을 필요가 있고 사용하는 페이지가 프로젝트를 실행하고 있지만 웹 사이트를 컴파일 할 때 컨트롤의 형식이 ASP.forms_controls_formdefinitionlistitemcontrol_ascx이기 때문에 위의 코드는 null을 반환합니다.
이 컨트롤과 다른 컨트롤은이 방법으로 컴파일하는 유일한 컨트롤이며 솔루션에는 약 40-50 개의 컨트롤이 있습니다.
네임 스페이스 이름이 아닌 어셈블리 이름을 확인하십시오. – TheGeekYouNeed
어떤 어셈블리 이름을 확인해야합니까? 그것은 웹 사이트 (응용 프로그램 아님)이고 컨트롤은 웹 사이트 내의 폴더에 앉아 있습니다.이 두 컨트롤을이 두 컨트롤에 부합시키는 것은 웹 배포 프로젝트입니다. App_Web_formdefinitionlistitemcontrol.ascx.32390934 & App_Web_sectiondetailcontrol.ascx.32390934 dlls ?? 모든 다른 컨트롤은 웹 배포 설정에 명시된대로 G2F.Collective.WebUI dll에 내장됩니다. – Reuben
"이 미리 컴파일 된 사이트를 업데이트 할 수 있도록 허용 하시겠습니까?" – TheGeekYouNeed