1

업데이트 할 수있는 페이지와 페이지가 변경되지 않은 ASP.NET 웹 사이트 프로젝트가 있습니다.ASP.NET 웹 사이트 프로젝트의 특정 디렉토리 미리 컴파일

업데이트되지 않는 페이지/컨트롤이 포함 된 특정 디렉토리를 미리 컴파일 할 수 있습니까?

그렇다면 어떻게 이러한 디렉토리를 지정할 수 있습니까?

편집 2009년 12월 17일

내 프로젝트는 다음과 같이 구성되어있다 :

/cms_pages ==> 업데이트 할 .ASPX 페이지 CompilationMode = "결코"더 코드 파일을 표시하지 않습니다.

/app_pages ==> .aspx.cs 코드 파일이있는 페이지.

/controls ==> .ascx는 .ascx.cs 코드 파일로 제어합니다. 내가 좋아하는 것

은 "미리 컴파일"는 컨트롤 폴더를 app_pages합니다.

할 수 있습니까?

답변

0

많은 두통이없는 것은 아닙니다. 지금 페이지를 어떻게 프리 컴파일하고 있습니까? 이 작업을하려면 WAP에 있어야합니다 ... 미리 컴파일하지 않고 그냥 프로젝트에서 빠져 나가기를 원하지 않는 것.

[편집]

수동으로 asp.net 컴파일러를 호출 할 수 있습니다. 그러나 나는 이것을 추천하지 않는다. 정말로해야 할 일은 솔루션 파일을 다른 프로젝트로 나눠서 미리 컴파일 한 파일을 웹 응용 프로그램 프로젝트 또는 일반 클래스 라이브러리에 저장하는 것입니다. 그런 다음 웹 사이트에서이 WAP에 대한 프로젝트 참조를 추가하십시오.

0

코드 파일로 ASPX 페이지를 컴파일하거나 App_Code 폴더에 일부 .cs 파일 만 컴파일 하시겠습니까?

일부 정적 기능 또는 전역 개체를 버전 제어하려고하는 경우 App_Code 폴더에 보관하도록 DLL을 컴파일 할 수 있습니다.

0

당신은 다음 유형 = assembly.GetType 으로 myAssembly.myControl을 통해

Dim assembly As Reflection.Assembly = Reflection.Assembly.LoadFrom(Server.MapPath(Virtual path to assembly)) 

희미한 myControlType를 액세스 할 수 어셈블리로 모든 컨트롤 (그리고 아마도 무엇이든 다른 사람을) 미리 컴파일 할 수 없습니다 UserControl을 = LoadControl (myControlType, 아무것도) myPanel.Controls.Add (myControl)

또는

Dim myControl As Control = LoadControl(virtual path to control) 
myPanel.Controls.Add(myControl) 
으로 myControl을 어둡게

희망이 도움이 ..

관련 문제