Wie kann ich zeigen, dass mehrere Versionen einer abhängigen Versammlung, okay?
-
09-06-2019 - |
Frage
Baugruppen A und B sind privat bereitgestellt und stark Namen.Montage enthält Verweise auf Montage B.Es gibt zwei Versionen der Assembly B:B1 und B2.Ich möchte in der Lage sein, um anzuzeigen, für die Montage Ein, dass es möglicherweise zu binden entweder B1 oder B2 -- idealerweise durch die Einbindung dieser Informationen in der Baugruppe selbst.Was sind meine Optionen?
Ich bin etwas vertraut mit versionierungs-Politik und die Art und Weise gilt es für den GAC, aber ich möchte nicht davon abhängig sein, diese assemblies werden im GAC.
Lösung
Es gibt mehrere Orte, die Sie .NET Framework, die eine bestimmte Version einer stark typisierten Bibliothek zeigen kann, sollte gegenüber anderen bevorzugt werden. Diese sind:
- Verlag Richtliniendatei
- machine.config Datei
- app.config-Datei
All diese Methoden verwenden, um die Element ">"
Hier ist ein kurzes Beispiel des Tags in Gebrauch alle Versionen einer Assembly bis Version 2.0 auf Version bis zu binden 2.5:
<assemblyBinding>
<dependantAssembly>
<assemblyIdentity name="foo" publicKeyToken="00000000000" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0 - 2.0.0.0" newVersion="2.5.0.0" />
</dependantAssembly>
</assemblyBinding>
Es gibt viele Details sind so ist es am besten, wenn Sie lesen Umleiten Assembly Versionen auf MSDN zu entscheiden, welche Methode ist am besten für Ihren Fall
.Andere Tipps
Sie können Version Politik in Ihrer app.config-Datei festgelegt. Alternativ können Sie manuell diese Baugruppen mit einem Aufruf laden Assembly.LoadFrom()
wenn diese Baugruppe Version getan wird, wird nicht berücksichtigt.