Visual Studio: Wie reference assemblies in Visual Studio?
habe ich eine debug-und eine release-version einer assembly-dll.
Sitzen Sie ist-Verzeichnisse auf meinem computer. Für andere Entwickler sitzen Sie in Verzeichnissen auf Ihrem computer.
Für die debug-version der Anwendung, die ich verwenden möchten, die debug-Montage. Für die release-version der Anwendung, die ich verwenden möchten, die release-Montage.
Das ist die Frage.
Für diejenigen, die nicht zahlen Aufmerksamkeit, es gibt durchaus ein paar Probleme hier. Gewusst wie: verweisen auf eine assembly, die auf meinem computer, die nach dem Projekt in die Quellcodeverwaltung eingecheckt wird ein Gültiger Pfad auf jemand elses computer.
Wie haben Sie die "Referenzen" - Knoten werden pro Art der Lösung (Debug, Release).
ich habe versucht, kopieren die debug-assembly
\bin\Debug
und der release assembly
\bin\Release
Hinzugefügt und die assembly-dll ' s zu-source-control im
\bin\Debug
\bin\Release
Ordner. Dann hoffe ich, dass die assembly in den ausführbaren Ordner.
Problem mit diesem ist, dass andere Entwickler die Maschinen ein Fehler angezeigt, dass die assembly-dlls konnten nicht überschrieben werden - wenn CopyLocal ist falsch.
- Warum brauchen Sie die debug-und release-Baugruppen da bist du auf Sie?
- Momentan bin ich nicht auf Sie einzeln. Jetzt bin ich verweisen auf die debug-version der assembly-dll, ob mein Projekt im Debug-oder Release-Modus.
Du musst angemeldet sein, um einen Kommentar abzugeben.
Eine gemeinsame Struktur für diese DLLs (a common directory-name) und link zu dieser relativ.
Beispiel .csproj-Datei:
Du hast vielleicht das eintragen von hand, aber einmal in der repo, es ist das gleiche für alle. Jetzt müssen Sie nur noch überzeugen, Ihr Entwickler einstellen, um diese Verzeichnis-layout und -Benennung.
PS: Falls du es übersehen: $(Konfiguration), ist der trick, um zu verwenden, Release/Debug-DLLs.
Dies funktioniert, da die Referenz-Pfade, die Entwickler befinden sich in einer user-Datei, die wird nie in die Quellcodeverwaltung eingecheckt. Daher werden die Pfade können unterschiedlich sein für jeden dev. Diese Lösung ist im Grunde gestohlen von Leonidas Antwort, aber nutzt Referenz-Pfade.
Haftungsausschluss
Ich weiß nicht, alle details zu deiner situation, aber ich persönlich würde das nicht tun. Ich würde wahrscheinlich GAC die release-version der Baugruppe auf den Entwickler-Maschinen. Dann hätte ich ein build-Skript, das lief auf einem server, würde die Pflege Ihrer anspruchsvollen Szenarien.
Gehören der Projekt-und der link zu dem Projekt? weiß nicht, ob das funktioniert in deiner situration...