2012-09-19 4 views
4

내 ASP.NET MVC 응용 프로그램에 .aspx 파일이 있습니다. Visual Studio 2010 프로젝트 탐색기 트리에서 파일을 선택하고 파일 속성으로 이동합니다. "빌드 작업"은 "내용"으로 설정됩니다. "Build Action"을 "Compile"로 변경하고 Visual Studio에게 프로젝트를 빌드하도록 요청합니다.Visual Studio에서 .aspx 파일을 "컴파일"하도록하려면 어떻게합니까?

C:\PathToProject\MyFile.aspx(1,1): error CS0234: The type or namespace name 'global_asax' 
    does not exist in the namespace 'ASP' (are you missing an assembly reference?) 

에서 .aspx 파일의 첫 번째 줄은 다음과 같습니다 : 나는 컴파일러 출력 내에서 .aspx 파일에 대해 다음과 같은 오류 메시지가 ... 궁금한데

<%@ Page Language="C#" MasterPageFile="~/Views/Shared/My.Master" Inherits="System.Web.Mvc.ViewPage" %> 

불만을 제기하려는 컴파일러는 무엇이며 .aspx 파일을 컴파일하는 방법은 무엇입니까?

+0

ASPX 파일이 컴파일되지 않습니다. 너 뭐하려고? – KennyZ

+0

@KennyZ : Visual Studio 내에서 프로젝트를 빌드하는 동안 ASP.NET 사전 컴파일을 호출하고 싶습니다. – sharptooth

+0

Yor .cs 또는 .vb 파일은 .aspx가 아닌 미리 컴파일됩니다. 설정은 프로젝트 속성에 있어야하며 개별 파일의 설정을 변경하지 않아야합니다. – KennyZ

답변

0

@KennyZ에 따르면 ASPX/ASCX/Master/CSHtml 파일은 일반 컴파일 프로세스의 일부가 아닌 "컴파일"되지 않습니다. 이러한 파일은 첫 번째 요청시 페이지 클래스로 컴파일되기 때문에 웹 마스터가 이동 중에도 파일을 수정할 수 있으므로 일반적으로 좋은 생각입니다. 특히 ASPX 파일에 많은 콘텐츠가 포함되어있는 경우 특히 그렇습니다.

VS 파일 속성 빌드 작업이이 설정을 제어하지 않는다는 점에 유의하십시오. BuildAction 속성을 숨기거나 최소한 문서화해야한다고 생각합니다. 개발자 커뮤니티에서는 잘 이해하지 못합니다.

하지만 할 수 있습니다! VS2005에서 VS2005 SP1이 나올 때까지 VS2003 "웹 응용 프로그램"을 대체하는 것으로서 불량한 "웹 사이트"프로젝트를 도입했을 때 ASPX/ASCX/Master 파일을 응용 프로그램의 어셈블리에 미리 컴파일 할 수있는 옵션이있었습니다. 콘텐츠를 포함하지 않고 미리 컴파일 된 페이지 클래스를 참조하는 스텁 * .aspx 파일을 남겨 두었습니다.

여전히 VS2010을 사용하여이 작업을 수행 할 수 있지만 웹 응용 프로그램 프로젝트에 대해서는 GUI로는 명령 줄 aspnet_compiler.exe을 GUI로 사용해야합니다.

더 여기에 해당 문서가 여기 http://msdn.microsoft.com/en-us/library/bb398860%28v=vs.100%29.aspx

과 : http://msdn.microsoft.com/en-us/library/ms229863%28v=vs.100%29.aspx

3

뷰의 .ASPX이 빌드 작업이 내용으로 설정해야합니다가.

는 빌드시, 당신의 .csproj의 첫 번째 < PropertyGroup>에

<MvcBuildViews>true</MvcBuildViews> 

를 추가 (적어도, 컴파일러 오류 검사, 또는) 사전 컴파일을 활성화합니다.

+0

이것은 선호하는 방법입니다.하지만'.csproj'의 복사본을 만들어야하고 (그것을 깨뜨린 경우) 좋아하는 텍스트 편집기로 편집 할 때 VS에서 열리지 않았는지 확인해야합니다. (그렇지 않으면 VS가 항상 내 경험으로 올바르게 다시로드되지는 않습니다.) – Basic

+2

이것은 사전 컴파일하지 않으며 페이지 만 유효성을 검사합니다. – sharptooth

관련 문제