使用 ReadyToRun 编译

This article was translated from English: Does it need improvement?
Translated
View the article in English

启用 ReadyToRun 编译 将触发篡改保护并导致以下异常。

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

原因

根据 Microsoft 文档,SDK 将预编译与应用程序一起分发的程序集。对于独立的应用程序,这套程序集将包括框架。值得注意的是,C++/CLI 二进制文件不符合 ReadyToRun 编译条件。

解决方案

要从 ReadyToRun 处理中排除特定程序集,请使用名单。

<ItemGroup>
    <PublishReadyToRunExclude Include="IronPdf.dll" />
</ItemGroup>
XML