Nota
O acesso a esta página requer autorização. Podes tentar iniciar sessão ou mudar de diretório.
O acesso a esta página requer autorização. Podes tentar mudar de diretório.
Para habilitar o teste de unidade de seus ViewModels e serviços, crie um projeto de biblioteca de classes separado. Você precisa desse projeto porque os projetos de teste de unidade WinUI não podem fazer referência direta a projetos de aplicativo WinUI.
Noções básicas sobre o modelo de biblioteca de classes WinUI
O modelo de projeto WinUI Class Library cria uma biblioteca de classes gerenciada .NET (DLL) especificamente projetada para uso com aplicativos de área de trabalho WinUI 3. Este modelo faz parte do SDK de Aplicativos Windows e fornece recursos importantes que uma biblioteca de classes .NET padrão não inclui.
Principais diferenças de uma biblioteca de classes .NET
O modelo WinUI Class Library difere de uma biblioteca de classes .NET padrão de várias maneiras importantes:
-
Segmentação específica do Windows: destina-se a uma estrutura específica do Windows (como
net8.0-windows10.0.19041.0) em vez da estrutura .NET de plataforma cruzada, dando acesso às APIs do Windows. - Integração do SDK de Aplicativo Windows: inclui referências aos
Microsoft.WindowsAppSDKeMicrosoft.Windows.SDK.BuildToolspacotes NuGet, fornecendo acesso às APIs do WinUI 3 e do SDK de Aplicativo Windows. -
Suporte a WinUI habilitado: O projeto inclui
<UseWinUI>true</UseWinUI>em sua configuração, habilitando tarefas de compilação específicas do WinUI e compilação XAML. - Identificadores do tempo de execução do Windows: está configurado para identificadores de tempo de execução específicos do Windows (win-x86, win-x64, win-arm64).
Por que usar uma biblioteca de classes WinUI?
Use o modelo Biblioteca de Classes WinUI em vez de uma Biblioteca de Classes .NET regular quando sua biblioteca precisar:
-
Tipos e controlos de referência do WinUI 3: O modelo de Biblioteca de Classes WinUI permite utilizar tipos do namespace
Microsoft.UI.Xamle outras APIs do SDK de Aplicações Windows no código da biblioteca. - Incluir recursos XAML: se sua biblioteca contiver UserControls, controles personalizados ou outros recursos XAML, você precisará do modelo Biblioteca de Classes WinUI para compilar e empacotar corretamente esses recursos.
- Integração com aplicativos WinUI: o modelo é configurado para funcionar perfeitamente com aplicativos de área de trabalho WinUI 3, garantindo compatibilidade com o tempo de execução e o modelo de implantação do SDK de Aplicativo Windows.
- Suporte à compilação de marcação XAML: o modelo inclui as tarefas de compilação necessárias para compilar arquivos XAML na biblioteca.
Quando usar uma biblioteca de classes .NET padrão
Use um projeto padrão Biblioteca de Classes .NET quando a sua biblioteca:
- Contém apenas código .NET puro (ViewModels, modelos, serviços, utilitários)
- Não faz referência a nenhum tipo de WinUI 3 ou Windows App SDK
- Não inclui nenhum arquivo XAML ou código relacionado à interface do usuário
- Precisa ser compartilhado entre diferentes tipos de aplicativos (não apenas aplicativos WinUI)
- Destina-se a várias plataformas (por exemplo, .NET MAUI ou ASP.NET Core) ou sistemas operacionais (por exemplo, Linux ou macOS)
Para obter um tutorial sobre como adicionar uma biblioteca de classes .NET à sua solução, consulte Estender aplicativo de console C# e depurar no Visual Studio.
Para este tutorial, use o modelo Biblioteca de Classes WinUI porque ele permite que você faça referência a tipos WinUI, se necessário, no futuro, e foi projetado especificamente para integração com aplicativos WinUI 3. Embora nossos ViewModels e serviços atualmente não exijam tipos WinUI, o uso desse modelo oferece flexibilidade e garante a integração adequada com o ambiente do SDK de aplicativos Windows.
Criar o projeto WinUINotes.Bus
Crie um novo projeto WinUI Class Library nomeado WinUINotes.Bus para manter seus ViewModels, modelos e serviços na mesma solução que seu projeto de aplicativo WinUI.
No Visual Studio, clique com o botão direito do mouse na solução no Gerenciador de Soluções.
Selecione Adicionar>novo projeto....
Escolha o modelo Biblioteca de Classes WinUI e selecione Avançar.
Observação
Certifique-se de selecionar WinUI Class Library, não apenas Class Library. O modelo Biblioteca de Classes WinUI inclui referências ao SDK de Aplicativo Windows e à estrutura WinUI 3.
Nomeie o projeto
WinUINotes.Buse selecione Criar.Exclua o arquivo padrão
Class1.cs.
Adicionar referências do projeto
As referências de projeto permitem que seu projeto de aplicativo WinUI use os ViewModels e os serviços definidos no projeto de biblioteca de classes:
- Clique com o botão direito do mouse no projeto WinUINotes e selecione Adicionar>referência do projeto....
- Verifique o projeto WinUINotes.Bus e selecione OK.
O projeto Bus contém seus ViewModels, modelos e serviços, para que você possa testá-los independentemente da camada da interface do usuário.
Observação
O termo "Bus" indica um projeto que atua como uma camada de comunicação ou intermediário. Ele contém a lógica de apresentação (ViewModels), lógica de negócios (modelos) e serviços que você pode compartilhar e testar independentemente da interface do usuário.
Windows developer