2009-08-10 20 views
1

Ich versuche, einen ASP.NET-MVC-app auf II7 und erhalte die folgende Störung zu implementieren: hatDoppeltes System.Web in GAC!

Could not load file or assembly 'System.Web' or one of its dependencies. An attempt was made to load a program with an incorrect format. 

Der Server 3.5 SP1 .NET und ich versuchte, einschließlich den DLL in der Website ist ohne Glück!

Ich bemerkte in der GAC auf dem Server gibt es 2 System.Web 2.0 eines mit der Prozessorarchitektur x86 und ein anderes mit AMD64 (Server ist Intel XEON), könnte dies diesen Fehler verursachen?

Dank

SOLUTION: Ändern Sie die Bauplattform Ziel x64, doh!

Antwort

4

Es sollen zwei im GAC sein. Einer ist 32 Bit und der andere ist 64 Bit. Es klingt nach dem Fehler, dass Sie versuchen, eine 64-Bit-DLL in einen 32-Bit-Prozess zu laden. Welche Bitness ist das Programm zusammengestellt? Welche Bitness ist das Server-Betriebssystem?

+0

+1 für Einblick und "Bitness" –

+0

der Server ist 64 Bit! Wie überprüfe ich die Programmbitheit? –

+0

Rigobert: Überprüfen Sie die Build-Einstellungen in Visual Studio, und wenn es über eine Befehlszeile erstellt wird, überprüfen Sie diese Einstellungen. Stellen Sie abschließend sicher, dass Sie IIS nicht selbst als 32-Bit ausführen. –

0

Bekam den gleichen Fehler auf einem x64 IIS7. Ich habe die Anwendungspool-Einstellung "32-Bit-Anwendungen aktivieren" auf "true" geändert.