IL3000: Vermeiden des Zugriffs auf den Assemblydateipfad beim Veröffentlichen als Einzeldatei
Wert | |
---|---|
Regel-ID | IL3000 |
Kategorie | SingleFile |
Fix führt oder führt nicht zur Unterbrechung | Nicht betroffen |
Ursache
Wenn Sie eine Anwendung als Einzeldatei veröffentlichen (z. B. indem Sie die Eigenschaft PublishSingleFile
in einem Projekt auf true
setzen), gibt der Aufruf der Eigenschaft Assembly.Location
für Assemblys, die in dem Einzeldatei-Bundle eingebettet sind, immer einen leeren String zurück.
Behandeln von Verstößen
Wenn die App nur das enthaltende Verzeichnis für das Einzeldateipaket benötigt, können Sie stattdessen die Eigenschaft AppContext.BaseDirectory
verwenden. Stattdessen können Sie den Befehl auch vollständig entfernen.
Wann sollten Warnungen unterdrückt werden?
Es ist sinnvoll, diese Warnung zu unterdrücken, wenn die Assembly, auf die zugegriffen wird, definitiv nicht im Einzeldateipaket enthalten ist. Die Assembly ist möglicherweise nicht im Bundle enthalten, wenn die Assembly dynamisch aus einem Dateipfad geladen wird.