Aracılığıyla paylaş


Sınıf kitaplığı projesi oluşturma

ViewModel'lerinizin ve hizmetlerinizin birim testini etkinleştirmek için ayrı bir sınıf kitaplığı projesi oluşturun. WinUI birim testi projeleri WinUI uygulama projelerine doğrudan başvuramadığından bu projeye ihtiyacınız vardır.

WinUI Sınıf Kitaplığı şablonunu anlama

WinUI Sınıf Kitaplığı proje şablonu, WinUI 3 masaüstü uygulamalarıyla kullanılmak üzere özel olarak tasarlanmış bir .NET yönetilen sınıf kitaplığı (DLL) oluşturur. Bu şablon, Windows Uygulama SDK'sının bir parçasıdır ve standart bir .NET sınıf kitaplığının içermediği önemli özellikler sağlar.

.NET Sınıf Kitaplığı'ndan önemli farklar

WinUI Sınıf Kitaplığı şablonu, standart bir .NET Sınıf Kitaplığı'ndan çeşitli önemli yollarla farklıdır:

  • Windows'a özgü hedefleme: Windows API'lerine erişim sağlayan platformlar arası .NET çerçevesi yerine Windows'a özgü bir çerçeveyi (örneğin net8.0-windows10.0.19041.0) hedefler.
  • Windows Uygulama SDK Entegrasyonu: WinUI 3 ve Windows Uygulama SDK'sı API'lerine erişim sağlayan Microsoft.WindowsAppSDK ve Microsoft.Windows.SDK.BuildTools NuGet paketlerine başvurular içerir.
  • WinUI desteği etkinleştirildi: Proje, yapılandırmasına ek <UseWinUI>true</UseWinUI> olarak WinUI'ye özgü derleme görevlerini ve XAML derlemesini etkinleştirir.
  • Windows çalışma zamanı tanımlayıcıları: Windows'a özgü çalışma zamanı tanımlayıcıları (win-x86, win-x64, win-arm64) için yapılandırılır.

Neden WinUI Sınıf Kitaplığı kullanmalısınız?

Kitaplığınızın aşağıdakileri yapması gerektiğinde, normal bir .NET Sınıf Kitaplığı yerine WinUI Sınıf Kitaplığı şablonunu kullanın:

  • WinUI 3 Türleri ve Denetimlerine Başvuru: WinUI Sınıf Kitaplığı şablonu, kitaplık kodunuzda Microsoft.UI.Xaml ad alanındaki türleri ve diğer Windows Uygulama SDK'sı API'lerini kullanmanıza olanak tanır.
  • XAML kaynaklarını dahil etme: Kitaplığınız UserControls, özel denetimler veya diğer XAML kaynaklarını içeriyorsa, bu kaynakları düzgün bir şekilde derleyip paketlemek için WinUI Sınıf Kitaplığı şablonuna ihtiyacınız vardır.
  • WinUI uygulamalarıyla tümleştirme: Şablon, Windows Uygulama SDK'sı çalışma zamanı ve dağıtım modeliyle uyumluluk sağlamak için WinUI 3 masaüstü uygulamalarıyla sorunsuz çalışacak şekilde yapılandırılır.
  • XAML işaretleme derlemesini destekleme: Şablon, XAML dosyalarını kitaplığa derlemek için gerekli derleme görevlerini içerir.

Normal bir .NET Sınıf Kitaplığı ne zaman kullanılır?

Kitaplığınız aşağıdaki durumlarda standart bir .NET Sınıf Kitaplığı projesi kullanmalıdır:

  • Yalnızca saf .NET kodu içerir (ViewModel'ler, modeller, hizmetler, yardımcı programlar)
  • WinUI 3 veya Windows Uygulama SDK'sı türlerine başvurmaz
  • XAML dosyası veya kullanıcı arabirimiyle ilgili kod içermez
  • Farklı uygulama türleri arasında paylaşılması gerekir (yalnızca WinUI uygulamaları arasında değil)
  • Birden çok platformu (örneğin, .NET MAUI veya ASP.NET Core) veya işletim sistemlerini (örneğin, Linux veya macOS) hedefler

Çözümünüzde .NET Sınıf Kitaplığı ekleme öğreticisi için bkz. C# konsol uygulamasını genişletme ve Visual Studio'da hata ayıklama.

Gelecekte gerekirse WinUI türlerine başvurmanıza olanak sağladığından ve Özellikle WinUI 3 uygulamalarıyla tümleştirildiği için bu öğretici için WinUI Sınıf Kitaplığı şablonunu kullanın. ViewModel'lerimiz ve hizmetlerimiz şu anda WinUI türleri gerektirmese de, bu şablonu kullanmak esneklik sağlar ve Windows Uygulama SDK'sı ortamıyla düzgün tümleştirme sağlar.

WinUINotes.Bus projesini oluşturma

ViewModel'lerinizi, modellerinizi ve hizmetlerinizi WinUI uygulama projenizle aynı çözümde tutmak için adlı WinUINotes.Bus yeni bir WinUI Sınıf Kitaplığı projesi oluşturun.

  1. Visual Studio'da Çözüm Gezgini'nde çözüme sağ tıklayın.

  2. Yeni Proje Ekle...'> seçin.

  3. WinUI Sınıf Kitaplığı şablonunu seçin ve İleri'yi seçin.

    Uyarı

    Yalnızca Sınıf Kitaplığı'nı değil, WinUI Sınıf Kitaplığı'nı seçtiğinizden emin olun. WinUI Sınıf Kitaplığı şablonu, Windows Uygulama SDK'sına ve WinUI 3 çerçevesine başvurular içerir.

  4. Proje'yi WinUINotes.Bus adlandırın ve 'i seçerek'yi oluşturun.

  5. Varsayılan Class1.cs dosyayı silin.

Proje referansları ekleme

Proje başvuruları, WinUI uygulama projenizin sınıf kitaplığı projesinde tanımlanan ViewModel'leri ve hizmetleri kullanmasını sağlar:

  1. WinUINotes projesine sağ tıklayın veProje Başvurusu Ekle...'> seçin.
  2. WinUINotes.Bus projesini denetleyin ve Tamam'ı seçin.

Bus projesi ViewModel'lerinizi, modellerinizi ve hizmetlerinizi içerir, böylece bunları kullanıcı arabirimi katmanından bağımsız olarak test edebilirsiniz.

Uyarı

"Bus" terimi, iletişim katmanı veya aracı olarak işlev gören bir projeyi belirtir. Sunum mantığını (ViewModels), iş mantığını (modeller) ve hizmetleri, kullanıcı arabiriminden bağımsız olarak paylaşabileceğiniz ve test edebileceğiniz şekilde içerir.