파서 오류 메시지 : 'TestMvcApplication.MvcApplication'유형을로드 할 수 없습니다
프로덕션 서버 중 하나에서 다음 오류가 발생합니다. 왜 DEV 서버에서 작동하는지 확실하지 않습니까?
구문 분석기 오류 설명 :이 요청을 처리하는 데 필요한 자원을 구문 분석하는 중에 오류가 발생했습니다. 다음 특정 구문 분석 오류 세부 사항을 검토하고 소스 파일을 적절하게 수정하십시오.
파서 오류 메시지 : 'TestMvcApplication.MvcApplication'유형을로드 할 수 없습니다.
소스 오류 :
1 행 : <% @ 응용 프로그램 Codebehind = "Global.asax.cs"상속 = "TestMvcApplication.MvcApplication"Language = "C #"%>
소스 파일 : /global.asax 줄 : 1
아무도이 오류가 발생하고 어떻게 해결되었는지 확실하지 않지만 끝까지 도달했습니다. 도움을 주시면 감사하겠습니다.
또한 이것이 게시 된 코드임을 언급해야하므로 모든 것이 컴파일됩니다. 컴파일러 설정에 문제가있을 수 있습니까?
다른 답변들 중 어느 것도 나를 위해 일하지 않았습니다. 웹 프로젝트의 출력 경로를 변경하여 오류를 수정했습니다. bin \ debug로 설정했지만 출력 경로가 단순히 "bin"으로 설정되어 있지 않으면 웹 프로젝트가 작동하지 않습니다.
나는 이것을 몇 번 가지고 있었다. 방망이로 인해 특히 실망 스럽습니다. 오류 메시지는 문제가 무엇인지에 대한 단서가 없습니다.
이 문제를 해결하려면 프로젝트 제목 (이 경우 "TestMvcApplication")을 마우스 오른쪽 단추로 클릭하고 빌드를 클릭하십시오 .
이렇게하면 코드를 실행하기 전에 강제로 컴파일됩니다. 왜 그런지 묻지 마라. 그러나 이것은 100 % 해결책이었다.
구성 관리자를 사용하여 x86 또는 표준 프로젝트 "기본 설정"이외의 설정에서 실행하도록 강제 실행하면 IDE가 웹 프로젝트의 bin 폴더 아래에 많은 하위 디렉토리를 만듭니다.
이 작업이 시작되면 Cassini 서버가 실행 중이면 프로젝트가 제대로 작동하지 않습니다.
웹 프로젝트 속성-> 빌드 설정으로 이동하여 출력 경로를 bin \으로 변경하여 문제를 해결했습니다.
그런 다음 다시 빌드하고 모든 작업을 수행하십시오.
오랫동안 열심히 본 후 여기에서 실제 문제에 직면했습니다.
파일을 호스팅 된 환경에 업로드 할 때 사용한 FTP 클라이언트로 인해 어셈블리가 손상되었습니다.
FTP 클라이언트를 변경했으며 모든 것이 의도 한대로 작동합니다.
나는 같은 문제가 있었다 : 웹 프로젝트는 x86의 플랫폼 목표를 가지고 있었기 때문이었다. 64 비트 컴퓨터에서 실행 중이었습니다. 솔루션의 다른 프로젝트는 64 비트로 설정되었습니다.
설정을 확인하려면 프로젝트를 마우스 오른쪽 버튼으로 클릭하고 속성을 선택하십시오. 빌드 탭에서 "플랫폼 대상"값을 확인하십시오.
또한 솔루션의 빌드 구성 (빌드 메뉴> 구성 관리자)을 확인하여 모든 프로젝트가 동일한 플랫폼에 빌드되는지 확인하십시오.
두 경우 모두 디버그 및 릴리스 모드에 대한 설정을 확인해야합니다. 그렇지 않으면 머신에서 작동하지만 배포 할 때는 작동하지 않습니다!
위의 모든 해결책을 시도했지만 운이 없습니다. <add assembly="*" />
web.config에 줄 을 추가하면 문제가 해결되었습니다. 솔루션에 대한 MS 지원 덕분에 적절한 .NET 프레임 워크 버전의 machine.config 또는 root web.config 파일에 추가 할 수도 있습니다.
나는 같은 오류처럼 보였습니다. 웹 사이트가 잘못된 버전의 .Net으로 설정되어 있다는 문제를 발견하기 위해 많은 페이지에서 많은 제안을 시도했습니다.
재 컴파일 횟수 나 '구성 문제'라고 말하는 사람이 있더라도 아무도 .net 버전을 확인해야한다고 지적하지 않았습니다.
프로젝트 / 솔루션 이름을 바꾸면 IT 부서와 함께합니다. Windows 탐색기에서 프로젝트 폴더로 이동하십시오 (VS에서 나가십시오). 전역 파일을 찾아서 열고 (아마도 2 개의 파일을 찾은 후 ".asax.cs"확장자가없는 파일을 열고) 올바른 경로로 오류 행을 편집하십시오. 행운을 빕니다!
며칠 전에 똑같은 문제가 발생했습니다 .32 비트 웹 응용 프로그램을 실행하는 64 비트 IIS의 문제라고 말할 수있는 한. 프로덕션 서버를 32 비트로 변경했는데이 문제가 사라졌습니다.
웹 프로젝트 속성의 기본 네임 스페이스가 Global.asax.cs의 네임 스페이스와 동일한 지 확인하십시오. 기본 네임 스페이스를 하위 네임 스페이스로 변경하여 다시 변경하면이 문제가 해결되었습니다.
완성을 위해 내 문제와 해결 방법을 포함 시켰습니다.
나와 같이 web.config를 통해 httphandlers를 가지고 있고 내 경우와 같이 global.asax.cs (Session_Start ()에서 리디렉션)가있는 경우 시작 프로젝트에 참조가 정의되어 있지 않으면이 오류가 발생합니다. httphandler가 가리키는 대상! (그러나 빌드 오류가 발생하지 않고 런타임 오류 만 발생합니다)
그래서:
- 외부 항목이 있는지 web.config를 다시 확인하십시오.
- 시작 프로젝트에 필요한 모든 참조가 있는지 다시 확인하십시오.
건배.
내가 경험 한 유일한 시간은 MVC 프레임 워크가 서버에 설치되지 않았을 때였습니다. 그럴 수 있습니까?
Views \ Web.config에서 누락 된 페이지 섹션에 결함이있을 수도 있습니다.
나는 같은 오류가 있었고 어떤 해결책도 도움이되지 못했습니다. 내 문제는 단순히 프로젝트를 위해 선택한 이름이라고 생각합니다. 구문 분석 오류가 발생하면로드 할 수 없다고 말한 내 프로젝트의 이름을 '인터페이스'로 지정했습니다.
1 행 : <% @ 응용 프로그램 Codebehind = "Global.asax.cs"상속 = " @interface .MvcApplication"Language = "C #"%>
어떤 이유로 '@'표시가있는 곳. 나는 '인터페이스'라는 단어가 다른 것으로 예약되어 있고 @ 기호를 추가했지만 분명히 무언가를 깨뜨렸다 고 추측합니다. 프로젝트를 삭제하고 문제없이 다른 이름으로 새 프로젝트를 만들었습니다.
다른 하나는 다음과 같습니다.
- localhost : 12345를 사용하는 웹 API 프로젝트를 작업하고있었습니다.
- 동일한 프로젝트를 포함하는 소스 컨트롤과 다른 지점을 체크 아웃했습니다.
- I ran the project on the branch and got the error.
- I went to "Properties > Web > Project Url" and clicked "Create Virtual Directory"
- A dialog came up telling me that the url was mapped to a different directory (the directory for the original project).
- I clicked Okay and the virtual directory was remapped.
- The error went away.
I hope that helps someone somewhere :)
I had a lot of problems and errors to solve, some of the above answers helped, but what the final trick that made it work for me was: Go to your project, click properties.
Go to the Package/Publish Web tab and make sure the configuration is set to Release and Platform to All Platforms.
Last make sure that the "Items to deploy (applies to all deployment methods)" is set to "All files in this project folder"
It then worked fine for me.
This issue is complicated because it's easy to confuse the root cause with whatever the immediate cause happens to be.
In my case, the immediate cause was that the solution is configured to use NuGet Package Restore, but the server was not connected to the internet, so NuGet was unable to download the dependencies when building for the first time.
I believe the root cause is simply that the solution is unable to resolve dependencies correctly. It may be an incorrect path configuration, or the wrong version of an assembly, or conflicting assemblies, or a partial deployment. But in all cases, the error is simply saying that it can't find the type specified in global.asax because it can't build it.
Make sure that the Namespace in the Global.asax
file matches that in the Global.cs
file i.e.
Global.asax: Some.Website.Webapplication
Global.cs: Some.Website
(minus the 'WebApplication')
I tried most of the above answers and they didn't work. For some reason just closing and reopening VS fixed the problem for me.
My issue was solved when I converted in IIS the physical folder that was containing the files to an application. Right click > convert to application.
For me, it was because I had temporarily excluded the file from the project. I merely included it in back in the project and then it worked.
In my case reference of System.Web.MVC was missing from my project. But after adding references issue was same so i checked properties of my Bin folder it was ReadOnly. Just after making it writable,everything working fine.
I was getting error because I deployed the application as a virtual directory and I was was getting parser error "could not load type" then I deployed the application as a web site and i was not getting that error again.
None of the other answers resolved this error for me.
I did find a solution that worked, which I suggest for those in the same situation:
- Close Visual Studio
- Browse to Projects\yourProject\yourProject
- Rename Web.Debug.config and Web.Release.config
- Rebuild and run your application
I never really did get to the bottom of what was causing it for me. I think somewhere I must have been missing some files. I got the error after publishing to a new server. Eventually I copied the site from working site. Then the site worked and so did further publishes to the new server.
Follow these steps:
- Build
- Configuration Manager
- Put the AnyCPU project
- Back to generate
- Ready, after this just follow the same steps to pass it to x86 or x64
For me, I had a DLL included with my project that had to be run in a 32-bit environment.
The server was configured to run the website in 32-bit mode, but I was not able to run the application on my 64-bit machine because the localhost
folder had not been specified to run in 32-bit mode.
I just had a similar problem.
The reason was that I was changing a file.aspx.c and had to do a clean rebuild. After that everything worked.
My problem was that I was trying to create a ASPX web application in a subfolder of a folder that already had a web.config file, and
So I opened up the parent folder in Visual Studio as a Web Site (Open > Web Site) I was able to add a new item ASPX page that had no issue parsing/loading.
For me, the problem was only on certain (long) links within the website and was tracked down to URLScan having the default configuration of a URL length limit of 260.
I've had the same issue. Try to:
Right click on the project and select Clean, then right click on it again and select Rebuild and run the project to see if it worked.
'development' 카테고리의 다른 글
npm을 사용하여 TypeScript를 최신 버전으로 업데이트하는 방법은 무엇입니까? (0) | 2020.06.09 |
---|---|
C ++ : 가장 가까운 수의 배수로 올림 (0) | 2020.06.09 |
인덱스의 열 순서는 얼마나 중요합니까? (0) | 2020.06.09 |
MVC 3 : Ajax를 통해로드 될 때 레이아웃 페이지없이 뷰를 렌더링하는 방법? (0) | 2020.06.09 |
콘솔에 vbscript 출력 (0) | 2020.06.09 |