2010-05-02 3 views
0

저는 System.Web.UI.UserControl을 확장 한 일반 .cs 파일을 사용하여이 작업을 수행 한 다음 다른 프로젝트에 컨트롤이 포함 된 프로젝트의 어셈블리를 포함 시켰습니다. 또한 하나의 프로젝트에서 .ascx 파일을 만든 다음 속성 -> 빌드 이벤트 -> 사전 빌드 이벤트에서 지정된 폴더의 모든 ascx 파일을 복사했습니다.프로젝트간에 웹 사용자 컨트롤을 공유합니다.

지금 내가하고 싶은 것은이 두 가지를 조합 한 것입니다. 하나의 프로젝트에서 다른 모든 프로젝트에서 빌드하는 ascx 파일을 사용할 수 있기를 원하지만 오히려 어셈블리 참조를 사용하여 포함시키고 싶습니다. 그것들을 나의 "보조"프로젝트에 복사하는 것보다, 내가 원하는 것을 이루기위한 빈민굴 방식 인 것 같습니다. 네,하지만 아주 우아하지 않습니다.

아무에게도 이것이 가능하면 알려주시겠습니까? 그렇다면이 방법에 가장 근접한 방법은 무엇입니까?

답변

0

기본적으로 사용자 컨트롤은 여러 프로젝트에서 공유되지 않습니다. 프로젝트간에 재사용 할 수있는 컨트롤을 만들려면 다른 프로젝트에서 참조 할 수있는 DLL로 컴파일 된 서버 컨트롤을 만들어야합니다.

Developing Custom ASP.NET Server Controls

0

나는이 질문에 이미 답을 알지만, 우리의 클라이언트 중 하나가 SiteFinity를 사용하고 우리가 컴파일 된 DLL과 사용자 컨트롤을 제공 파일을 생성 한 다음 CMS 시스템에서 구성합니다. 제가 말할 수있는 한 그것은 아주 잘 작동합니다.

이렇게하려면 asp.net 웹 사이트 (웹 응용 프로그램 아님)에서 사용자 정의 컨트롤을 만들고 프리 컴파일 및 "고정 된 어셈블리 이름 사용"옵션을 사용하여 사이트를 게시합니다. 그런 다음 ascx 파일과 관련된 dll을 클라이언트에 배포하고 필요에 따라 가져옵니다.

관련 문제