Utilizar la compilación ReadyToRun o Ahead-Of-Time (AOT)
.NET ReadyToRun (R2R) es una forma de compilación anticipada (AOT).
Habilitar la compilación ReadyToRun durante la implementación podría violar la protección contra manipulaciones y resultar en excepciones como las siguientes:
Exception: Unhandled exception. IronSoftware.Exceptions.LicensingException: IronPdf, Version=2024.2.0.2, Culture=neutral, PublicKeyToken=94e1c31412563c75 assembly is not authentic. Please try to reinstall the nuget package
at IronPdf.PdfDocument.uswvws(Boolean vhfwdf)
at IronPdf.PdfDocument.get_BinaryData()
at IronPdf.PdfDocument.SaveAs(String FileName, Boolean SaveAsRevision)
at Program.<Main>(String[] args) in C:\csharppro\aottest\aottest\Program.cs:line 5
Motivo
Según la documentación de Microsoft, el SDK precompilará los ensamblados que se distribuyen con la aplicación. Para aplicaciones autónomas, este conjunto de ensamblados incluirá el marco de trabajo. Es importante tener en cuenta que los binarios C++/CLI no son elegibles para la compilación ReadyToRun.
Solución
Para excluir ensambles específicos del procesamiento de ReadyToRun, utilice la lista <PublishReadyToRunExclude> del archivo de proyecto. Por ejemplo, para excluir el ensamble IronPdf.dll:
<ItemGroup>
<PublishReadyToRunExclude Include="IronPdf.dll" />
</ItemGroup>
<ItemGroup>
<PublishReadyToRunExclude Include="IronPdf.dll" />
</ItemGroup>
Este fragmento XML debe agregarse a su archivo de proyecto (.csproj) para evitar que los ensamblajes especificados se precompilen con ReadyToRun, evitando así posibles problemas de licencia o manipulación.

