Frage

Ich bin ein seltsames Phänomen in Visual Studio 2010 zu sehen.

Ihr Projekt-Setup ist dies (ich das geerbt - es kann nicht jederzeit schnell ändern, leider: - ():

  • eine WinForms-Anwendung, die Crystal Reports X verwendet (v10) als Reporting-Engine; vollständige CR X Developer Edition auf meiner Dev-Box installiert

  • mehrere Webforms apps, dass die Verwendung von Crystal Reports XI (v11) als Reporting-Engine - nicht installieren CR XI Vollversion, da es mit CR X Dev Ausgabe kollidiert ....

Um die Dinge Arbeit an unserem Build-Server zu machen, habe ich auch einen Library Ordner innerhalb des WinForms App Projektverzeichnis mit den CR X Runtime-Dateien erstellt ich brauche, sowie ein Library Ordner innerhalb des Projektverzeichnis des Web-App mit dem CR XI-Laufzeitdateien.

In VS 2008, ich war in der Lage, die notwendigen Baugruppen aus dem jeweiligen Bibliotheksordner in meinen Winforms Projekten (mehr Klassenbibliotheken usw.) zu holen, und in meinen Web-Anwendungen. Alles hat super funktioniert.

Wenn ich Visual Studio 2010 aktualisiert, jetzt plötzlich sehe ich:

  • in meinen WinForms-Anwendungen, alle Verweise auf CR X-Laufzeitdateien automatisch aktualisiert werden, um die CR X-Dateien aus dem GAC zu verwenden - das ist nicht , was ich will! Es hilft nicht, wenn ich diese Verweise löschen und erneut hinzufügen, sie wieder von zum Library Ordner Surfen - wenn ich sie holen, scheint VS2010 zu automagically conver sie GAC Referenzen wieder ...

  • in meinen Web-Anwendungen, werden die Dinge noch schlimmer: wenn ich die CR XI Runtime-Baugruppen aus dem Library Ordner auswählen, wieder VS2010 scheint automagically dort zu erkennen sind ähnliche Dateien (gleicher Name, aber verschiedene Versionen) in der GAC und verwendet diese Dateien statt - jetzt meine Web-Anwendungen nicht mehr funktionieren .....

Was die h *** los ist mit VS 2010 hier ?? Warum kann es nicht lassen meine Auswahl allein und lassen Sie mich meine Runtime-Dateien aus einem Ordner auswählen Library statt Beharren auf dem GAC gehen ?? Was hat sich zwischen VS 2008 und VS 2010 in dieser Hinsicht geändert ?? Hat jemand irgendwelche Einblicke in diese ??

War es hilfreich?

Lösung

Es kann sinnvoll sein, entweder

(1) gehen Sie zu Extras \ Options \ Project & Solutions \ Build & Run und MSBuild Änderung Ausführlichkeit zu ‚Diagnose‘ und dann bauen und im Ausgabefenster sehen, wie die MSBuild Referenzauflösungslogik für diese Baugruppen arbeitet. Das heißt, wenn VS nicht bereits getan etwas lächerlich an den zugrunde liegenden CSPROJ Datei

hat

(2) zu vergleichen, die XML in der VS2008-Projektdatei im Vergleich zu der VS2010 Projektdatei, um zu sehen, was in dem <Reference> Knoten

Eine wilde spekulative Vermutung: das VS2010-Projekt „.NET 4.0 Client“ zielt auf (eher als „.NET 4.0 (full-Framework)“, und die Bibliotheken müssen die vollen Rahmen, und MSBuild sieht diese Abhängigkeit und wird unter Verwendung von Ausweich Logik .

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top