Da AppDomain.AppendPrivatePath() veraltet ist, versuche ich herauszufinden, wie ich einen PrivateBinPath für die aktuelle AppDomain in meinem Projekt angeben kann, ohne eine neue AppDomain zu erstellen und später darauf zugreifen zu können.Wie kann ordnungsgemäß auf die PrivateBinPath-Eigenschaft der aktuellen Anwendungsdomäne zugegriffen werden?
Ich weiß, dass ich das PrivateBinPath auf einem AppDomainSetup Objekt festlegen kann (was in Ordnung wäre, wenn ich eine neue AppDomain schaffen wollte), und ich weiß auch, dass ich es zu meinem app.config wie so hinzufügen:
<runtime>
<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
<probing privatePath=".\AlternateLookupPath" />
</assemblyBinding>
</runtime>
Wenn Sie diesen Eintrag jedoch zu meiner app.config hinzufügen, ist die AppDomain.CurrentDomain.SetupInformation.PrivateBinPath-Eigenschaft null.
Ich habe versucht, mit diesem, aber nicht für mich gearbeitet. Die AppDomain.CurrentDomain.SetupInformation.PrivateBinPath-Eigenschaft ist immer noch null. –
Es scheint, dass die AppDomain.CurrentDomain.SetupInformation.PrivateBinPath Null bleibt, wenn ein Suchpfad über eine app.config-Datei festgelegt ist, aber ich konnte bestätigen, dass der Suchpfad in diesem Fall tatsächlich noch verwendet wird. Das Aufrufen von Assembly.Load und das Angeben des Namens einer Assembly in meinem Abfragepfad ist erfolgreich. –
Wie in diesem Kommentar empfohlen http://stackoverflow.com/questions/33353420/appdomain-currentdomain-setupinformation-privebinpath-is-null?noredirect=1#comment54508987_33353420 "SetupInformation.PrivateBinPath" ist immer Null für die primäre appdomain. – bitbonk