AZFW0109: Il progetto generato non dovrebbe essere costruito

Item Value
ID regola AZFW0109
Categoria Sdk
Severity Warning

Cause

La destinazione Build viene eseguita sul progetto azure_functions.g.csproj generato. Questo progetto non è destinato a essere costruito direttamente, ma viene utilizzato solo per ripristinare e risolvere il payload di estensione.

Descrizione regola

Il progetto generato non è destinato a essere costruito direttamente, ma viene utilizzato solo per ripristinare e risolvere il payload di estensione. Costruire comporterà un avvertimento.

Procedura di correzione

Diagnostica cosa causa la costruzione diretta del progetto generato (azure_functions.g.csproj). Una causa comune è un file traversal o dirs.proj che usa il globbing per individuare i progetti, includendo involontariamente il progetto generato. Il log binario di MSBuild può essere utile per identificare perché e come azure_functions.g.csproj si sta costruendo.

Escludere da un glob ProjectReference

Se il tuo progetto di attraversamento utilizza un pattern globo per includere i progetti, aggiungi un Exclude per saltare il file generato:

<ItemGroup>
  <ProjectReference Include="**/*.csproj" Exclude="**/azure_functions.g.csproj" />
</ItemGroup>

Rimuovi una determinata ProjectReference

Se il progetto generato è stato aggiunto come riferimento esplicito, rimuovere la ProjectReference voce che lo riferisce:

  <ItemGroup>
-   <ProjectReference Include="path/to/azure_functions.g.csproj" />
  </ItemGroup>

Rimuovere gli oggetti corrispondenti ProjectReference condizionatamente

Se non puoi modificare facilmente il glob o l'inclusione esplicita, puoi rimuovere gli elementi corrispondenti dopo che sono stati risolti:

<ItemGroup>
  <ProjectReference Remove="@(ProjectReference)" Condition="'%(Filename)%(Extension)' == 'azure_functions.g.csproj'" />
</ItemGroup>

Quando sopprimere gli avvertimenti

La soppressione non è raccomandata. Si raccomanda di identificare cosa sta causando la costruzione di questo progetto e di impedirlo.