Advertencia de NuGet NU5131

References were found in the nuspec, but some reference assemblies were not found in both the nuspec and ref folder. Add the following reference assemblies:
- Add AssemblyName.dll to the ref/net472/ directory

Problema

NuGet tiene una característica para permitir que los creadores de paquetes seleccionen qué ensamblados estarán disponibles en tiempo de compilación en los proyectos que usan el paquete.

Si no se siguen las convenciones necesarias, se puede producir un error en tiempo de ejecución de los proyectos que usan el paquete con PackageReference debido a que faltan ensamblados.

Solución

La lista de ensamblados de la sección <references> del archivo nuspec debe tener ensamblados coincidentes en ref/<tfm>/.

Por ejemplo, considere el paquete con los archivos siguientes:

lib\net472\MyLib.dll
lib\net472\MyHelpers.dll
lib\net472\MyUtilities.dll

El creador del paquete quiere impedir que los consumidores escriban código que llame directamente a MyUtilities.dll, por lo que agrega lo siguiente al archivo nuspec:

<references>
    <group targetFramework="net472">
        <reference file="MyLib.dll" />
        <reference file="MyHelpers.dll" />
    </group>
</references>

Este paquete no funcionará según lo previsto al usar PackageReference. Para corregirlo, el paquete también debe contener los siguientes archivos:

ref\net472\MyLib.dll
ref\net472\MyHelpers.dll