Nota:
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
| Elemento | Value |
|---|---|
| Identificador de la regla | AZFW0111 |
| Categoría | Sdk |
| Severity | Warning |
Causa
Después de la restauración, no se encontró el ensamblado Microsoft.Azure.Functions.Worker.Core en el grafo de paquetes resueltos del proyecto.
Descripción de la regla
Las versiones anteriores de Azure.Functions.Sdk agregaban Microsoft.Azure.Functions.Worker como una referencia directa implícita de paquete. Como era una referencia directa, NuGet lo fijó a la versión proporcionada por el SDK y degradó silenciosamente las versiones superiores solicitadas por dependencias transitivas (por ejemplo, paquetes de integración OpenTelemetry). La discrepancia de versiones no se reportó en la restauración, pero causó fallos en tiempo de ejecución como System.MissingMethodException.
El SDK ya no añade esta referencia implícita. En su lugar, el paquete worker debe ser referenciado por el proyecto — directamente o a través de un paquete que dependa de él — para que NuGet resuelva la versión más alta que requiera el grafo de dependencias. Este destino valida que un paquete de trabajo esté presente tras la restauración y avisa cuando falta.
Solución
Añade una referencia a Microsoft.Azure.Functions.Worker (o un paquete que dependa de ella, como Microsoft.Azure.Functions.Worker.Grpc):
<ItemGroup>
+ <PackageReference Include="Microsoft.Azure.Functions.Worker" Version="2.52.0" />
<PackageReference Include="Microsoft.Azure.Functions.Worker.Extensions.Http.AspNetCore" Version="2.1.0" />
</ItemGroup>
Cuándo suprimir las advertencias
Suprime esta advertencia solo si el proyecto intencionadamente no produce una aplicación de Azure Functions ejecutable (por ejemplo, una biblioteca compartida que es consumida por una aplicación de funciones). Supréndelo añadiendo AZFW0111 a NoWarn:
<PropertyGroup>
<NoWarn>$(NoWarn);AZFW0111</NoWarn>
</PropertyGroup>