IL3001: Vermeiden des Zugriffs auf den Assemblydateipfad beim Veröffentlichen als Einzeldatei
Wert | |
---|---|
Regel-ID | IL3001 |
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), führt der Aufruf der Assembly.GetFile(s)
-Methoden für Assemblys, die in das Einzeldatei-Bundle eingebettet sind, immer zu einer Ausnahme, da diese Methoden nicht mit Einzeldateien kompatibel sind.
Behandeln von Verstößen
Zum Einbetten von Dateien in Assemblys in Einzeldateipakete sollten Sie eingebettete Ressourcen und die Methode Assembly.GetManifestResourceStream
verwenden.
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.