Condividi tramite


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.
  • 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

Vedi anche