Avviso di RuntimeIdentifier se non è specificato il contenuto autonomo
Se si specifica un oggetto RuntimeIdentifier
nel file di progetto o si usa l'opzione -r
con dotnet
, .NET SDK imposta come predefinita la compilazione, la pubblicazione ed esegue gli output per essere applicazioni autonome. L'impostazione predefinita senza specificare un oggetto RuntimeIdentifier
consiste nell'avere un'applicazione dipendente dal framework. Questa modifica introduce un nuovo avviso (NETSDK1179) se si specifica un oggetto RuntimeIdentifier
senza specificare se l'applicazione è autonoma.
Versione introdotta
.NET 6 RC 1
Comportamento precedente
Nelle versioni precedenti, la specifica di un oggetto RuntimeIdentifier
modifica automaticamente l'applicazione da un'applicazione dipendente dal framework a un'applicazione autonoma.
Nuovo comportamento
In .NET 6, se si specifica un oggetto RuntimeIdentifier
senza specificare se l'applicazione è autonoma, verrà visualizzato l'avviso seguente:
avviso NETSDK1179: quando si usa "--runtime" o "--no-self-contained" sono necessarie una delle opzioni '--runtime'.
Ad esempio, il comando seguente genererà l'avviso:
dotnet publish -r win-x86
Categoria di modifiche
Questa modifica può influire sulla compatibilità dell'origine.
Motivo della modifica
L'impostazione predefinita senza specificare un oggetto RuntimeIdentifier
è generare un'applicazione dipendente dal framework. Questa impostazione predefinita ha causato confusione a molti clienti. Lo scopo dell'aggiunta dell'avviso è:
- Avvisa i clienti della modifica del comportamento per impostazione predefinita a un'app dipendente dal framework.
- Incoraggiare i clienti a scegliere in modo specifico il tipo di applicazione che vogliono compilare.
- Preparare i clienti per modificare il comportamento in .NET 7 per impostazione predefinita come dipendente dal framework.
Azione consigliata
- Specificare un valore booleano nel file di progetto per
SelfContained
. - In alternativa, aggiungere
--self-contained
con un valore al comando di compilazione o pubblicazione.
API interessate
N/D