10

Ich habe eine connect issue für dieses Verhalten ausgelöst.VS 2015 kopiert GAC-Referenzen einer Projektreferenz unabhängig von der lokalen Einstellung der Kopie

VS 2015 Kopien zur Ausgabe GAC Referenzen eines Projekts Referenz unabhängig von der lokalen Einstellung kopieren. VS 2010 tut dies nicht mit der gleichen Lösung & Projekte, unter Berücksichtigung der Kopie lokale Eigenschaft. Die einzige Problemumgehung, die ich bisher gefunden habe, besteht darin, einen direkten Verweis auf Microsoft.Web.Services3.dll in Projekt A hinzuzufügen und es so zu setzen, dass local = false kopiert wird.

Schritte zum Reproduzieren:

Project A 
|__ Project B (Project Reference, copy local = true) 
    |__Microsoft.Web.Services3.dll (GAC, copy local = false) 

Aktuell:

Microsoft.Web.Services3.dll in das Ausgabeverzeichnis von A. Projekt kopiert wird

Erwartet:

Microsoft.Web.Services3.dll wird nicht in das Ausgabeverzeichnis von Projekt A kopiert.

Eine Idee, warum dies geschieht? Die MSDN documentation gibt eindeutig an, dass Abhängigkeiten nicht auf Ausgabe kopiert werden sollten, und VS 2010 respektiert das.

+0

FYI, VS2013 respektiert das auch (zumindest mit meinen Fällen). Ich werde wahrscheinlich auf ein Update 1 auf VS 2015 warten, bevor ich dorthin migrieren werde. –

+0

Ja, besser warten - bevor Sie Ihren Build-Prozess unterbrechen :) – vezenkov

+1

Sie müssen herausfinden, wie MSBuild in der Lage war, diese DLL an erster Stelle zu finden. Es sollte nicht in B's Build-Verzeichnis vorhanden sein, sieht aus wie es war. Ändern Sie die MSBuild-Ausführlichkeit in "Detailliert" und geben Sie die relevanten Zeilen aus der empfangenen Ablaufverfolgung ein. –

Antwort

1

Als ich von VS2013 zu VS2015 wechselte, stieß ich auf ein ähnliches Problem mit mehreren GAC-Baugruppen von Drittanbietern. Die Lösung für mich war, in jede .csproj Datei zu gehen und folgendes hinzuzufügen:

<PropertyGroup> 
    <DoNotCopyLocalIfInGac>true</DoNotCopyLocalIfInGac> 
</PropertyGroup> 
+0

Es scheint, als ob diese Frage vor einigen Monaten war. Ich denke, ich sollte das überprüfen, bevor ich auf Fragen antworte, die höchstwahrscheinlich anderswo beantwortet werden. –

Verwandte Themen