In meinem Team haben wir Hunderte von freigegebenen DLLs, die auch auf andere DLLs verweisen, die wiederum auf andere DLLs verweisen, und so weiter. Wir haben begonnen, ein "Shared" -Verzeichnis für alle dlls zu verwenden, von denen wir denken, dass sie generisch genug sind, um sie in anderen Projekten zu verwenden, wie zum Beispiel einer Datenbank-Comms-DLL.Was ist der beste Weg, um mit geteilten DLLs in C# umzugehen?
Das Problem ist, dass, wenn eine der DLLs den ganzen Weg hinunter der Baum geändert wird, dann alles, das es referenziert, neu kompiliert werden muss, um Versionierungsprobleme zu vermeiden (die zur Laufzeit auftreten).
Um dies zu vermeiden, ist jetzt die Rede davon, all unsere "gemeinsamen" DLLs in eine große Assembly zu integrieren, und jeder, der neue Apps erstellt, referenziert dies einfach und das alleine.
Dies wird natürlich immer größer und ich bin mir nicht sicher, ob das der beste Weg ist oder nicht. Irgendwelche Gedanken bitte?
Das aber bedeuten würde funktionieren würde alle Projekte in Visual Studio geladen, und ich glaube nicht, es sehr reaktionsschnell sein wird, nachdem zu viele Projekte hinzugefügt werden. Außerdem müssen Sie die kompilierten DLLs für jedes Projekt manuell verwalten, selbst wenn Sie beispielsweise ein Post-Build-Skript verwenden. – HAdes