Megjegyzés
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhat bejelentkezni vagy módosítani a címtárat.
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhatja módosítani a címtárat.
A ViewModel-ek és szolgáltatások egységtesztelésének lehetővé tétele érdekében hozzon létre egy külön osztálykönyvtár-projektet. Erre a projektre van szüksége, mert a WinUI 3 egységteszt projektek nem hivatkozhatnak közvetlenül a WinUI alkalmazásprojektekre.
A WinUI osztálykódtár sablonjának ismertetése
A WinUI osztálykódtár project sablon létrehoz egy .NET felügyelt osztálytárat (DLL), amelyet kifejezetten WinUI asztali alkalmazásokhoz terveztek. Ez a sablon a Windows App SDK része, és olyan fontos képességeket biztosít, amelyeket egy szabványos .NET osztálytár nem tartalmaz.
A .NET osztálytár főbb eltérései
A WinUI osztálykódtár sablonja számos fontos módon különbözik a standard .NET osztálykódtártól:
-
Windows-specifikus célzás: Windows-specifikus keretrendszert (például
net8.0-windows10.0.19041.0) céloz meg a platformfüggetlen .NET keretrendszer helyett, amely access biztosít a Windows API-k számára. -
Windows App SDK integráció: A
Microsoft.WindowsAppSDKésMicrosoft.Windows.SDK.BuildToolsNuGet-csomagokra mutató hivatkozásokat tartalmaz, amelyek access biztosítanak a WinUI és Windows App SDK API-k számára. -
WinUI-támogatás engedélyezve: A project
<UseWinUI>true</UseWinUI>is szerepel a konfigurációjában, így WinUI-specifikus buildelési feladatokat és XAML-fordítást tesz lehetővé. - Windows runtime azonosítók: Windows-specifikus futtatókörnyezet-azonosítókhoz (win-x86, win-x64, win-arm64) van konfigurálva.
Miért érdemes WinUI-osztálykódtárat használni?
Használja a WinUI osztálytárat sablont normál .NET osztálytár helyett amikor a kódtárnak a következőre van szüksége:
-
Reference WinUI-típusok és -vezérlők: A WinUI-osztálykönyvtár sablon lehetővé teszi a
Microsoft.UI.Xamlnévtér és más Windows App SDK API-k típusok használatát a könyvtár kódjában. - XAML-erőforrások belefoglalása: Ha a tár UserControls, egyéni vezérlők vagy egyéb XAML-erőforrásokat tartalmaz, az erőforrások megfelelő fordításához és csomagolásához a WinUI osztálytár sablonra van szüksége.
- Integrate with WinUI apps: A sablon úgy van konfigurálva, hogy zökkenőmentesen működjön a WinUI asztali alkalmazásokkal, biztosítva a kompatibilitást a Windows App SDK futtatókörnyezettel és az üzembe helyezési modellel.
- XAML jelölésfordítás támogatása: A sablon tartalmazza az XAML fájlok fordításához és összeállításához szükséges feladatokat a könyvtárba.
Mikor érdemes rendszeres .NET osztálytárat használni?
Használjon egy standard .NET osztálykönyvtár projektet, amikor a könyvtárai:
- Csak tiszta .NET kódot tartalmaz (ViewModels, modellek, szolgáltatások, segédprogramok)
- Nem hivatkozik semmilyen WinUI- vagy Windows App SDK-típusra
- Nem tartalmaz XAML-fájlokat vagy felhasználói felülettel kapcsolatos kódot
- Különböző alkalmazástípusok (nem csak WinUI-alkalmazások) között kell megosztani
- Több platformot (például .NET MAUI-t vagy ASP.NET Core) vagy operációs rendszert (például Linuxot vagy macOS-t) céloz meg
Az .NET keretrendszer osztálykönyvtár megoldáshoz való hozzáadásáról a Extend C# console app and debug in Visual Studio című oktatóanyagban olvashat.
Ebben az oktatóanyagban használja a WinUI osztálykódtár sablont, mert lehetővé teszi, hogy szükség esetén a jövőben WinUI-típusokra hivatkozzon, és kifejezetten a WinUI-alkalmazásokkal való integrálásra lett kialakítva. Bár a ViewModels és -szolgáltatások jelenleg nem igényelnek WinUI-típusokat, a sablon használata rugalmasságot biztosít, és biztosítja a Windows App SDK környezettel való megfelelő integrációt.
A WinUINotes.Bus project létrehozása
Hozzon létre egy új WinUI-osztálytárat project WinUINotes.Bus néven, hogy a ViewModels, a modellek és a szolgáltatások ugyanabban a megoldásban legyen tárolva, mint a WinUI-alkalmazás project.
A(z) Visual Studioban kattintson jobb gombbal a projektmegoldásra a Solution Explorer felületén.
Válassza a Add>New Project... .
Válassza ki a WinUI-osztálytár sablont, és válassza a Tovább gombot.
Megjegyzés:
Győződjön meg arról, hogy a WinUI-osztálytárat választja, nem csak az osztálytárat. A WinUI osztálykódtár sablonja a Windows App SDK és a WinUI-keretrendszerre mutató hivatkozásokat tartalmaz.
Nevezze el a project
WinUINotes.Busnevet, és válassza a Create lehetőséget.Törölje az alapértelmezett
Class1.csfájlt.
Project-hivatkozások hozzáadása
A projekt hivatkozások lehetővé teszik, hogy a WinUI-alkalmazás projekt használja az osztálytár projekt által definiált nézetmodelleket és szolgáltatásokat.
- Kattintson a jobb gombbal a WinUINotes projektre, és válassza a Hozzáadás>Projekt hivatkozás....
- Ellenőrizze a WinUINotes.Bus project és válassza a OK lehetőséget.
A Bus project a ViewModel-eket, modelleket és szolgáltatásokat tartalmazza, így a felhasználói felületi rétegtől függetlenül is tesztelheti őket.
Megjegyzés:
A "Bus" kifejezés egy kommunikációs rétegként vagy közvetítőként működő project jelöl. Tartalmazza a megjelenítési logikát (ViewModels), az üzleti logikát (modelleket), valamint a felhasználói felülettől függetlenül megosztható és tesztelhető szolgáltatásokat.
Windows developer