IL3001: evitare l'accesso al percorso del file di assembly quando si esegue la pubblicazione come file singolo
Valore | |
---|---|
ID regola | IL3001 |
Categoria | SingleFile |
La correzione causa un'interruzione o meno | Non causa un'interruzione |
Causa
Quando si pubblica un'app come singolo file, ad esempio impostando in un progetto la proprietà PublishSingleFile
su true
, la chiamata ai metodi Assembly.GetFile(s)
degli assembly incorporati all'interno del bundle a file singolo genera sempre un'eccezione, poiché questi metodi non sono compatibili con un singolo file.
Come correggere le violazioni
Per incorporare file negli assembly in bundle a file singolo, è consigliabile usare le risorse incorporate e il metodo Assembly.GetManifestResourceStream
.
Quando eliminare gli avvisi
È opportuno disattivare questo avviso se l'assembly a cui si accede non è sicuramente nel bundle a file singolo. L'assembly potrebbe non trovarsi nel bundle se viene caricato dinamicamente da un percorso di file.