Comportamento ShowPrintDialog no IronPrint (Pós-2024.9)

Curtis Chau
Curtis Chau
Updated: 29 de junho de 2026

ShowPrintDialog e ShowPrintDialogAsync não lançam mais uma exceção quando chamados em um framework de destino não suportado. A partir da versão 2024.9, eles registram um aviso e retrocedem para PrintAsync() em vez disso.

Antes desta mudança, chamar qualquer método sem um TargetFramework compatível gerava o seguinte erro:

System.AggregateException: 'One or more errors occurred.
(Please try Print/PrintAsync since ShowPrintDialog/ShowPrintDialogAsync in NET Core or NET Standard,
it required UI component so please set more specific OS TargetFrameworks
e.g. net462; net472; net7.0-windows; net7.0-macos; net7.0-maccatalyst; net7.0-android)'
Text

Os métodos de diálogo precisam de um componente de UI, que está indisponível em alvos .NET Core ou .NET Standard. Builds anteriores tratavam isso como um falha crítica e lançavam erro. A exceção era disruptiva em tempo de execução, então o comportamento foi alterado deliberadamente em 2024.9.

Solução

O retrocesso é automático, mas você pode controlar qual caminho é executado escolhendo o alvo certo.

1. Confie no Retrocesso Automático

Em um framework não suportado, a chamada agora registra um aviso e direciona para PrintAsync() em vez de lançar erro. O código existente continua rodando sem travar, embora nenhum diálogo de impressão apareça.

Aviso: O retrocesso imprime sem diálogo. Usuários não veem prompt de impressão em alvos não suportados, então não dependa que o diálogo seja mostrado a menos que você direcione para um framework de UI.

Para obter o diálogo de impressão real, construa contra um alvo específico do SO que inclua suporte de UI:

<TargetFrameworks>net462;net472;net7.0-windows;net7.0-macos;net7.0-maccatalyst;net7.0-android</TargetFrameworks>
XML

Com um desses frameworks, ShowPrintDialog e ShowPrintDialogAsync exibem o diálogo como esperado.

Curtis Chau é bacharel em Ciência da Computação (Universidade Carleton) e se especializa em desenvolvimento front-end, com experiência em Node.js, TypeScript, JavaScript e React. Apaixonado por criar interfaces de usuário intuitivas e esteticamente agradáveis, Curtis gosta de trabalhar com frameworks modernos e criar manuais bem estruturados e visualmente atraentes.

Leia mais

Pronto para começar?

Nuget Downloads 49,171Versão:2026.11recém-lançado