IT story

오류 :«MvcApplication 유형을로드 할 수 없습니다»

hot-time 2020. 4. 12. 10:32
반응형

오류 :«MvcApplication 유형을로드 할 수 없습니다»


오류가 발생합니다

MvcApplication 유형을로드 할 수 없습니다

웹 사이트를 운영하려고 할 때

수정하는 방법?


멍청한 것처럼 들리지만 모든 것을 시도했지만 작동하지 않고 마침내 VS2012를 다시 시작하여 다시 작동하는지 확인했습니다.


나에게 수정 사항은 빌드 탭에서 출력 경로를 변경하는 것이 었습니다. 출력 경로를로 변경하고 bin\오류가 사라졌습니다.

-또 다른 수정은 잘못된 시작 프로젝트 세트가 있다는 것입니다.


나는 동일한 오류가 발생하고 여기에 언급 된 모든 것을 수행했지만 아무것도 효과가 없었습니다. 전 이름이 다른 이전 버전의 프로젝트에서 global.asax.cs의 소스 코드를 복사 한 것으로 나타났습니다. 그래서 namespace Test해야했다 namespace Test.WebUI. 물론 어리석은 실수이며 이것을 쓰는 것이 조금 당황합니다! 그러나 다른 사람의 비슷한 오류로 인해이 사소한 측면도 확인할 수 있기를 바랍니다.


솔루션을 수동으로 빌드하십시오.

로컬 IIS를 사용하는 경우 IIS 관리자에서 웹 사이트 등록을 삭제 한 다음 수동으로 다시 작성하십시오.


[질문에서 발췌]

"MvcApplication 유형을로드 할 수 없습니다"라는 오류가 표시되면 프로젝트의 출력 경로를보고 'bin \'으로 설정되어 있는지 확인하십시오. 문제는 AspNetCompiler가 파일이 기본 위치에 있지 않으면 파일을 찾을 수 없다는 것입니다.

출력 폴더 변경의 또 다른 부작용은 코드를 디버깅 할 수 없으며 어셈블리 정보를 찾을 수 없다는 메시지가 표시된다는 것입니다.


나는 같은 문제가 있었고 아래 단계로 해결했습니다.

  1. 프로젝트 속성으로 이동
  2. "빌드"탭에서 출력 경로를 "bin \"으로 설정하십시오.

내 해결책 : 문제가 생겼기 때문에! Global.asax.cs에서 네임 스페이스를 변경했습니다.

또한 Global.asax에서 상속 속성 값을 변경해야합니다.


아 귀찮았 어.

전원 차단 후이 오류가 발생하여 프로젝트로 돌아 왔습니다.

VS를 다시 시작했습니다. 출력 경로를 \ bin으로 설정하려고했습니다. 네임 스페이스를 확인했습니다.

그러나 나를 위해 일한 것은 솔루션을 재구성하는 것이 었습니다.

솔루션 재 구축 !!!


global.asax에 제공된 코드 숨김 정보를 확인하십시오. 코드 뒤에있는 클래스를 올바르게 가리켜 야합니다.

global.asax 샘플 :

<%@ Application Codebehind="Global.asax.cs" Inherits="MyApplicationNamespace.MyMvcApplication" Language="C#" %>

샘플 코드 뒤 :

   namespace MyApplicationNamespace
    {
        public class MyMvcApplication : System.Web.HttpApplication
        {
            protected void Application_Start( )
            {
                AreaRegistration.RegisterAllAreas( );
                FilterConfig.RegisterGlobalFilters( GlobalFilters.Filters );
                RouteConfig.RegisterRoutes( RouteTable.Routes );
                BundleConfig.RegisterBundles( BundleTable.Bundles );
            }
        }
    }

  1. 실패한 솔루션 내에서 프로젝트를 마우스 오른쪽 단추로 클릭하십시오 .
  2. 프로젝트 언로드
  3. 프로젝트 새로 고침
  4. 프로젝트 구축
  5. 솔루션 재 구축

IIS Express에서 동일한 포트 할당을 사용하여 이전 / 다른 프로젝트를 호스팅하거나 호스팅하는 경우 Visual Studio에서 프로젝트를 실행하는 동안 발생할 수도 있습니다.

이 문제를 해결하기 위해이 프로젝트의 포트 할당을 변경하거나 IIS Express를 닫을 수 있습니다.


IIS Express에서 호스팅하고 있고 두 개의 다른 위치에서 프로젝트를 열면이 오류가 표시 될 수 있습니다.

해결책은로 이동하여 Project/Properties/Web/Servers클릭하십시오 Create Virtual Directory.


나를위한 해결책은 Mvc 프로젝트를 마우스 오른쪽 버튼으로 클릭하고 속성을 선택한 다음 가상 디렉토리 만들기를 클릭하는 것입니다.

프로젝트가 잘못된 폴더에 매핑되었다는 메시지 상자가 나타납니다 ( 다른 TFS 프로젝트 의 폴더가 표시됨) . 올바른 폴더에 다시 매핑하는 옵션이 제공되었습니다.


컴파일 시간 오류에도 불구하고 프로젝트를 실행했기 때문에이 오류가 발생했습니다. 이것은 눈치 채지 못했습니다.


사이트 bin 폴더의 내용을 삭제하십시오 (파일 탐색기를 사용하십시오). 재건하십시오.


이미 bin/빌드 탭에있었습니다. 프로젝트의 다른 사본에서 global.asax를 얻었지만 해결되지 않았습니다.

마침내 나를 위해 일한 해결책은 bin/폴더 를 제거 하고 동일한 이름으로 새 빈 폴더를 만드는 것입니다.


나는 이미 이것에 대한 많은 해결책이 있다는 것을 알고 있지만, 내가 그것을 해결 한 것을 언급 할 것이라고 생각했다.

구성이 디버그로 설정되었습니다. 그것을 Release로 변경하면 나에게 속임수가되었습니다.


나는 지난 10 년 동안 이것을 여러 번 보았고 그것을 다시 가지고 있었다. 같은 오류가 발생하는 많은 문제가 있습니다.

한 가지 원인은 파일 이름을 바꾸는 것입니다. .cshtml 파일로 작업하는 경우 해당 파일과 Views \ web.config 파일 내의 모든 네임 스페이스를 확인하십시오. 웹 양식의 경우 Default.aspx의 이름을 바꿉니다 (관련 .cs 및 디자이너 파일의 이름이 자동으로 바)). 코드 숨김은 변경되지만 마크 업의 상속 선은 변경되지 않습니다. 수동으로 변경하십시오. 디자이너 페이지를 다시 확인하십시오. 때때로 (VS2005-8?) 디자이너 페이지에 네임 스페이스의 변경 사항이 반영되지 않습니다. 2010 년에 이것을 보지 못했습니다.

또 다른 문제는 VS 또는 로컬 PC에서 모두 작동하지만 배포 할 때는 작동하지 않는 것입니다. 배포 환경이 동일하게 구성되지 않았기 때문일 수 있습니다. 예를 들어, 코드를 응용 프로그램 폴더 아래의 가상 디렉터리에 배치하면 오류가 발생하지만 새 응용 프로그램 폴더를 만들어 모든 파일을 저장하면 발생하지 않습니다. 새 하위 / 가상 폴더가 동일한 권한으로 설정되어 있으므로 응용 프로그램 풀이 주어진 응용 프로그램 폴더의 모든 항목에 대해 동일하게 작동해야한다고 생각 하므로이 항목을 이해하지 못합니다.

필자의 경우 IIS 서버의 다른 어셈블리에서 업데이트 된 어셈블리가있는 bin 폴더도 있습니다. 다시 말하지만, 이들은 별도의 응용 프로그램 폴더에서 실행되어 성공했습니다.

HTH


동적으로 컴파일되는 파일 (ascx, aspx 등)을 저장할 때 마다이 문제가 발생합니다. 나는 약 8-10 초 기다렸다가 사라집니다. 정말 성가신 일입니다.

아마도 IIS Express 문제라고 생각하여 내장 된 dev 서버에서 시도했지만 파일을 저장 한 후에도 여전히 수신하고 있습니다. 나는 MVC 앱을 실행 중이며 T4MVC도 사용하고 있습니다.


global.asax.cs 의 네임 스페이스가 webapp의 네임 스페이스와 일치 하는지 확인하십시오.


나는 이것에 빠졌다. 이전에 제공된 모든 가능한 솔루션을 읽고 테스트했습니다. 빌드 경로 확인, 빌드, 재 빌드, 정리, IIS 및 VS2015 재시작, 모든 Nuget 패키지 재설치, 하나씩 컴파일 등 ...

VS가 ASP 임시 파일을 시스템 폴더에 보관한다는 사실을 갑자기 기억했습니다 ... 결국 더 나쁘지 않을 수도 있습니다. 그래서 나는 비웠다 :

C:\Windows\Microsoft.NET\Framework64\v4.0.30319\Temporary ASP.NET Files
C:\Windows\Microsoft.NET\Framework\v4.0.30319\Temporary ASP.NET Files

그리고 모든 것이 다시 작동하고 있습니다 ...이 문제에는 가능한 다른 해결책이 있습니다 ...


File-> Open Web Site 와 같은 MVC 프로젝트를 열 필요가 없는지 확인하십시오 . 대신 File-> Open Project사용 하십시오 .


나를 위해 일한 것은 Visual Studio를 다시 시작하는 것이 었습니다.

수동으로 재 구축, 정리 및 재 구축 수행 및 모든 작동하지 않는 bin 폴더 삭제를 시도했습니다. 출력 경로가 이미 bin \으로 설정되었습니다


Visual Studio의 개발 환경 에서이 좌절스러운 오류가 있었고 그 이유가 상당히 멍청하다는 것이 밝혀졌습니다. 즉, 솔루션에 하나 이상의 웹 프로젝트 / 사이트가있는 경우 웹 사이트에 액세스하려는 포트가 프로젝트 속성-> 웹에 구성된 포트와 동일한 지 확인하십시오.

내 경우에는 솔루션의 프로젝트에 다른 포트가 할당 된 동안 다른 포트를 사용하여 웹 사이트 (브라우저에서)에 액세스했기 때문에 오류가 발생했습니다. 조금 더 설명하기 위해 내 솔루션 Website1 (Visual-Studio에서 ISS에 포트 8001을 할당 함)과 Website2 (Visual-Studio에 의해 ISS에 포트 8101을 할당 함)에 두 개의 웹 사이트 프로젝트가있었습니다. 그래서 Website1을 구축하고 있었지만 locahost : 8101을 사용하여 웹 사이트에 액세스하려고했습니다.

마침내 문제를 깨달았으므로 @StingyJack의 의견도 비슷한 문제를 해결합니다.


네임 스페이스를 변경 한 경우 마우스 오른쪽 단추를 클릭하고 리팩터링하십시오.


네임 스페이스를 변경하면 매우 자주 발생할 수 있습니다. 예전처럼 네임 스페이스의 이름을 반환하면 제대로 작동합니다!


경우에 따라 새 프로젝트는 기본적으로 빌드하도록 설정되지 않습니다. 솔루션을 마우스 오른쪽 버튼으로 클릭하면을 Properties선택하고 Configuration Properties| Configuration왼쪽에 노드를 표시하고 프로젝트의 Build아래에 확인 표시가 있는지 확인하십시오 . 정상적인 상황에서는 이것이 기본적으로 발생하는 것으로 나타났습니다. 다른 상황에서 (이 동작을 나타내는 다소 복잡한 Web Api / Xamarin Android 및 iOS / Mvc 5 솔루션이 발생합니다) 확인 표시가 없습니다.

이것은 다른 답변과 관련이 있습니다. 웹 프로젝트의 조립품을 사용할 수없는 경우이 오류가 발생합니다. 그러나 이것은 일반적인 시나리오 일 수 있습니다. 특히 솔루션을 실제로 컴파일하기 때문에 프로젝트가 빌드되지 않습니다.


내 버전 컨트롤이 내 bin 폴더 를 무시하도록 설정되어 있기 때문에이 오류가 발생했습니다 . 매우 어리석은 사람이지만 다른 사람이 도움이 될 수 있습니다.


나는이 문제에 부딪 쳤고 모든 종류의 답변이 있지만 아무것도 받아들이지 않았습니다. 나는 웹 사이트를 구축하기 전에 웹 사이트를 구축하는 것이 내 문제를 해결한다는 것을 조금 알게되었습니다.


나는이 오류가 다시 있었고 위의 어느 것도 나를 위해 일하지 않았다. .csproj 파일에서 다음 노드를 제거해야했습니다 <VisualStudio>....</VisualStudio>. VS를 다시로드하고 작동했습니다.

참고로 VS는 노드를 다시 만든 다음 IIS를 통해 웹 사이트를 VS를 통해 다시 만들었으며 완벽하게 작동했습니다.

잘하면 이것은 누군가를 도울 것입니다.

참고 URL : https://stackoverflow.com/questions/1120329/error-could-not-load-type-mvcapplication

반응형