2009-12-19 7 views
1

원격 호스트에 MVC 응용 프로그램을 배포하는 데 많은 행운이없는 것 같습니다.MVC 배포 문제 해결

Visual Studio 2010을 사용하여 MVC v2에 an updated site을 방금 만들고 FTP를 통해 내 호스트에 배포했는데 작동하지 않습니다.

Source Error: 

Line 39:  <compilation> 
Line 40:   <assemblies> 
Line 41:    <add assembly="System.Web.Mvc, Version=2.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/> 
Line 42:    <add assembly="System.Web.Abstractions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/> 
Line 43:    <add assembly="System.Web.Routing, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/> 

링크를 다음에서 볼 수 있듯이

는 라인 (41)이 매니페스트를 포함하기로되어 있었기 때문에 MVC 어셈블리를로드 할 수 없습니다 말하는, 분명히 문제입니다.

나는 모든 정확한 참조와 파일 버전을 제공했다는 것을 확신했기 때문에, 그 밖의 무엇을 놓칠 수 있습니까? 와일드 카드 응용 프로그램 매핑이 서버에 구현되었습니다.

답변

1

웹 호스트를 다시 검사 할 때 문제는 내 서버에서 MVC2가 지원되지 않아 사이트 참조를 위해 MVC dll 버전 1.0 프로젝트 참조를 설정해야한다는 것입니다.

1

asp.net mvc는 일반적으로 실행하는 시스템에 설치됩니다. VS 프로젝트를 만들 때 대상 디렉토리에 복사하도록 MVC를 설정 했습니까? mvc dll을 복사하도록 설정하는 것이 서버에 설치되지 않은 경우 mvc 1.0을 배포하는 데 효과적이었습니다.

+0

예, MVC, 추상화 및 라우팅이 모두 로컬 복사로 설정되었습니다. 내 의문은 문제는 내 MVC2 사용과 웹 호스트 설치 (v.1, 아마도?)간에 충돌하는 것입니다. –

+0

web.config에 전체 어셈블리 이름을 제공 했으므로 충돌로 인해 발생할 가능성이 없다고 생각합니다. – Raymond

0

어셈블리를 사용하려는 경우 GAC가 아닌 로컬 저장소에 상주합니다. web.config에서 전체 이름을 사용하지 않을 수도 있습니다.

<add assembly="System.Web.Mvc"/> 

ildasm을 사용하여 어셈블리의 매니페스트를 확인할 수 있습니다. 웹 서버에 배포 한 mvc 어셈블리의 정확한 사본에서 시도하여 문제가 있는지 확인하십시오.

+0

행운을 빌어 요, 죄송합니다. –

+0

잘. 오류 메시지에 따르면 어셈블리에 매니페스트가없는 것으로 보입니다. mvc 어셈블리를 직접 컴파일 했습니까? 그것은 당신의 컴퓨터에서 잘 작동하는 유효한 어셈블리입니까? – Raymond