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.
Ez a gyakori kérdések Windows alkalmazásfejlesztéssel kapcsolatos gyakori kérdésekre adnak választ, beleértve a projektek megfelelő keretrendszerének kiválasztásával kapcsolatos útmutatást. Az érintett témakörök a következők:
- Első lépések és az Windows alkalmazásfejlesztési környezet.
- Natív Windows alkalmazásfejlesztés WinUI 3, Windows megjelenítési alaprendszer (WPF) és Windows Forms (WinForms) használatával.
- Windows Software Development Kit (SDK) és Windows App SDK.
- A Windows célzása a platformfüggetlen fejlesztési stratégia részeként.
- Hibrid és webalkalmazás-fejlesztés .NET MAUI, Blazor és ASP.NET Core használatával.
- Hogyan válasszunk egy megközelítést, miközben megértjük Microsoft befektetéseit.
Windows alkalmazásfejlesztési környezet
Hol találok egyértelmű áttekintést Windows fejlesztési technológiákról?
A Windows fejlesztők mai lehetőségeinek áttekintéséért tekintse meg a Windows Dev Chat epizódot, amely az ideális fejlesztői platform kiválasztását ismerteti, amely a WinUI 3, a .NET MAUI, a React Native, a Blazor és a Progresszív Web Apps (PWA-k) ismertetését ismerteti. A Windows Dev Chat lejátszási listájában további epizódokat is találhat.
A Windows fejlesztők számára készített alkalmazásfejlesztési lehetőségek áttekintésére is hivatkozhat.
A modern digitális átalakításhoz még mindig elengedhetetlen az ügyfélalkalmazások fejlesztése a cloud services korában?
A felhőszolgáltatások korában az ügyfélalkalmazások fejlesztése továbbra is fontos a felhasználói eszközökön való rugalmas, értelmes interakciók biztosításához.
Íme, miért fontosak az ügyfélalkalmazások:
- Eszköz elérése: Az ügyfélalkalmazások lehetővé teszik, hogy az alkalmazást közvetlenül a választott eszközökön lévő felhasználókhoz hozza.
- Átjáró az intelligens szolgáltatásokhoz: ügyfélalkalmazások gyakran az első interakciók a felhasználókkal a szolgáltatásaikkal. Gazdag, interaktív felületet kínálnak, amellyel intelligens funkciókat mutathat be, és megkülönböztetheti a terméket másoktól.
- Méretezhetőség felhőintegrációval: A jól integrált ügyfélalkalmazás könnyedén szinkronizálható a háttérrendszerbeli felhőszolgáltatásokkal, így a felhasználói bázis növekedésével valós idejű hozzáférést és zökkenőmentes méretezhetőséget tesz lehetővé.
- Fokozott hatékonyság és felhasználói hűség: Egy átgondolt kialakítású alkalmazás növelheti a termelékenységet, és folyamatosan figyelemmel követheti a felhasználókat a termékével vagy szolgáltatásával.
Natív Windows alkalmazásfejlesztés
Mi a Windows App SDK?
A Windows App SDK független szervizelt összetevőket biztosít Windows asztali alkalmazásokhoz, beleértve a WinUI 3-at, az alkalmazás életciklusát, az ablakozást, az értesítéseket, az erőforrásokat és a szöveges API-kat. Támogatja az Windows 10, 1809-es és újabb verziókon futó alkalmazásokat, a Windows kiadás és Windows App SDK verziójának támogatási életciklusától függően.
Mi a különbség a Windows App SDK és a Windows SDK között?
Mindkettő szoftverfejlesztői készlet (SDK), amely lehetővé teszi Windows alkalmazások készítését.
A(z) Windows App SDK olyan összetevőket biztosít, amelyek a Windowstól függetlenül kerülnek kiadásra, és a támogatott Windows-kiadásokon működnek egészen a Windows 10 1809-es verziójáig. WinUI 3 és API-kat tartalmaz az alkalmazás életciklusához, ablakozásához, értesítéseihez, erőforrásaihoz, szövegéhez és egyéb képességeihez.
A Windows SDK fejléceket, kódtárakat, metaadatokat és eszközöket biztosít az operációsrendszer-API-khoz, például a Win32-hez, a WinRT-hez, a COM-hoz, a DirectX-hez, az eszközökhöz és a rendszerhéjhoz.
A Windows App SDK nem helyettesíti a Windows SDK-t. A Windows App SDK alkalmazó alkalmazások továbbra is használhatják Windows SDK API-kat, és a WinUI 3-alkalmazások gyakran mindkettőt használják.
Új csapatot építek, hogy Windows-only alkalmazást fejlesszünk ki. Miért érdemes natív Windows keretrendszerrel (például WinUI 3, WPF vagy WinForms) fejleszteni?
Az alábbiakban néhány okot talál arra, hogy natív Windows keretrendszert válasszon a Windows-only alkalmazáshoz:
- Performance: A natív Windows-keretrendszerek a modern Windows hardverek kihasználására vannak optimalizálva, gyors és rugalmas felhasználói élményt biztosítva.
- Integráció: A Windows olyan API-k széles választékával rendelkezik, amelyek kifinomult élményeket tesznek lehetővé csak Windows alatt. A natív keretrendszerek mély integrációt biztosítanak ezekkel a funkciókkal és API-kkal.
- Natív felhasználói élmény: A natív keretrendszerek egységes felületet biztosítanak Windows eszközökön, így az alkalmazás mindenhol nagyszerűen néz ki és működik.
- Offline támogatás: A natív keretrendszerek támogatják az offline forgatókönyveket, így az alkalmazások internetkapcsolat nélkül is működhetnek.
- Támogatás és eszközhasználat: Microsoft fenntartja a natív keretrendszereket, és aktuális SDK-kat, dokumentációt, hibakeresési eszközöket és mintákat biztosít.
Milyen keretrendszert kell használnom Microsoft legújabb befektetéseivel Windows alkalmazásfejlesztésbe?
Ha új általános célú Windows asztali alkalmazást készít, javasoljuk a WinUI 3 használatát. A WinUI 3 az Windows App SDK által biztosított natív felhasználói felületi keretrendszer. Támogatja Windows asztali alkalmazásokat, és hozzáférést biztosít az aktuális Fluent-vezérlőkhöz és Windows platformképességekhez.
Használhatom a Windows App SDK/WinUI 3-at a meglévő Windows-alkalmazásomban?
Vegye figyelembe, hogy a WinUI 3 (egy felhasználói felületi keretrendszer) a Windows App SDK (Windows platformfejlesztési keretrendszerrel) rendelkezik.
Az alkalmazás felhasználói felületét áttelepítheti a WinUI 3-ba, vagy a WinUI XAML-szigetek használatával Windows App SDK vezérlőket üzemeltethet egy támogatott meglévő asztali gazdagépen. Az örökölt rendszer XAML-szigetei UWP XAML-vezérlőket üzemeltetnek, és különböző API-kat használnak.
A Windows App SDK elemei gyakran használhatók asztali alkalmazásokban a meglévő alkalmazás felépítésétől függően. Az UWP-alkalmazásokat a Windows App SDK nem támogatja.
Ez azt jelenti, hogy WPF/MFC/WinForms-alkalmazások a WinUI 3-hoz nem kapcsolódó Windows App SDK API-kat használhatják. Ilyenek például az alkalmazások életciklusa, az ablakozás és az alkalmazásértesítések.
További információ: Az Windows App SDK használata meglévő projektben.
A WinUI 3-alkalmazások létrehozásához Visual Studio kell használnom?
Nem. A WinUI 3 XAML-buildek az MSBuildet használják, de a .NET SDK-val és az aktuális WinUI 3-sablonokkal egy másik szerkesztő parancssorából készíthet. Lásd a parancssori gyorsútmutatót.
Visual Studio 2026 a leggazdagabb integrált szerkesztési, hibakeresési, profilkészítési és XAML-Hot Reload élményt nyújtja. Használja az eszközhasználati követelményeknek megfelelő munkafolyamatot.
I "Nem tölthető be a DLL "Microsoft.ui.xaml.dll"" hiba az alkalmazás futtatásakor. Hogyan javíthatom ki?
Ez a hiba általában unpackaged olyan alkalmazásforgatókönyvekben fordul elő, ahol a Windows App SDK futtatókörnyezet nincs telepítve a gépen. Kipróbálhatja a következőt:
- Ha packaged alkalmazást futtat (az ajánlott alapértelmezett), győződjön meg arról, hogy Visual Studio keresztül indítja el a MsixPackage indítási profillal (nem az egyszerű végrehajtható profillal). Az MSIX csomagolási lépés telepíti a szükséges futtatókörnyezeti összetevőket.
- Ha keretrendszerfüggő csomagolatlan alkalmazást futtat, telepítse a megfelelő Windows App SDK futtatókörnyezetet. Egy önálló üzembe helyezés magában foglalja a Windows App SDK függőségeit.
- Ellenőrizze, hogy a projekt megfelel-e az üzembehelyezési modellnek. Normál .NET csomagolatlan alkalmazások esetén a beállítás
<WindowsPackageType>None</WindowsPackageType>lehetővé teszi Windows App SDK futtatókörnyezet automatikus inicializálását. A bootstrapper API-t csak akkor használja közvetlenül, ha explicit vezérlésre van szüksége a dinamikus függőségek inicializálása felett.A Windows App SDK-t használó alkalmazások üzembe helyezésével kapcsolatos követelményekről a Windows App SDK alkalmazások üzembe helyezése című részben talál további részleteket.
Mi a különbség a WinUI 3 és a WinUI 2 for UWP között?
A WinUI 3 Microsoft jelenlegi natív felhasználói felületi keretrendszere Windows asztali alkalmazásokhoz, és a Windows App SDK részeként érhető el.
A WinUI 2, más néven WinUI for UWP egy vezérlő- és stíluskódtár az UWP-alkalmazásokhoz. A WinUI 2 és a WinUI 3 különböző XAML-névtereket használ, és nem binárisan kompatibilisek.
Amikor Windows App SDK és WinUI 3 használatával készítek alkalmazást, "WinUI-alkalmazást" építek?
Igen. A WinUI 3 alkalmazás egy olyan alkalmazás legtisztább kifejezése, amelynek felhasználói felülete a WinUI 3-at és a Windows App SDK használja. A WinUI-alkalmazás is gyakran használatos, ha a szövegkörnyezet egyértelmű.
Növekményesen frissíthetem az UWP-alkalmazásomat a WinUI for UWP vezérlőkkel a WinUI 3-ra a vezérlők fokozatos cseréjével?
Nem. Windows App SDK nem használható az UWP-alkalmazásokban, és a WinUI for UWP nem keverhető a WinUI 3-val. Lásd: Migrálás az UWP-ről a Windows App SDK-ra.
Milyen nehéz migrálni egy UWP-alkalmazást a WinUI 3-ba?
Az UWP és a WinUI 3 számos XAML-fogalmat használ, de a migrálás nem közvetlen névtérváltozás. A költség elsősorban a következőtől függ:
- Project fájl és MSBuild testreszabás: A migrálási munka a speciális MSBuild használattól függően változik.
- .NET API-migrálás: A natív .NET használó UWP-alkalmazások áttérhetnek egy jelenleg támogatott .NET kiadásra a natív AOT használatával. Ez a modernizáció nem a felhasználói felület WinUI 3-ra való migrálása.
- Felhasználói felületi összetevők kódtárai: A kódtáraknak a WinUI 3-at célzó verziókkal kell rendelkezniük.
- Ablak- és alkalmazásmodell API-k: Az olyan fogalmakhoz kapcsolódó UWP API-k, mint
CoreWindowpéldául a ,ApplicationViewvagyGetForCurrentViewWindows App SDK csere vagy más asztali megközelítés megkövetelése.- C++ nyelvi kivetítés: Ha az UWP-alkalmazás a felülírt C++/CX-előrejelzést használja, portozza a kódot a C++/WinRT fájlba.
További információkért lásd: Migrálás az UWP-ről a Windows App SDK-ra és az UWP és a Windows App SDK API-megfeleltetése.
Ha már van UWP-alkalmazásom az Áruházban, közzétehetek egy új, csomagolt WinUI 3-alkalmazást ugyanazokkal az azonosítókkal?
Igen, a frissített alkalmazások az alkalmazás identitásának frissítése nélkül is közzétehetők. A régi verzió felhasználói az új verzióra frissülnek. Ez csak az asztali alkalmazásokra vonatkozik. Xbox, HoloLens és standard Surface Hub-alkalmazások nem migrálhatók a WinUI 3-ba.
Hogyan csomagolhatom vagy terjeszthetem a WinUI 3-alkalmazásomat?
Lásd: Üzembe helyezés áttekintése.
Hol találhatok Windows App SDK migrálási útmutatót?
Kell-e XAML-jelölőnyelvet használnom, ha a WinUI 3-at szeretném használni?
Nem. A felhasználói felület vezérlői kódban hozhatók létre. Azonban a felhasználói felület deklaratív XAML jelölésének használata számos előnnyel jár, beleértve a továbbfejlesztett fejlesztői élményt is.
- Migrálás UWP-ről WinUI 3-ra: Számos XAML- és UI-koncepció továbbvihető, de a névterek, a projektmodell és egyes API-k eltérnek.
- Migrálás a WPF-ről a WinUI 3-ra: Sok fogalom továbbra is alkalmazható, de a vezérlőkészlete és az API-k eltérnek.
Rendelkezik Visual Studio a WinUI 3 tervezési felületével vagy felhasználói felületének tervezőjével?
Jelenleg nem. Az XAML-Hot Reload, az élő vizualizációs fa, az Élő tulajdonságkezelő és a kapcsolódó futtatókörnyezeti eszközök használatával vizsgálja meg és frissítse az XAML-t az alkalmazás futtatása közben.
A WinUI 3-hoz elérhető futtatókörnyezet-tervezési eszközök teljes áttekintéséért tekintse meg a WinUI 3 XAML futtatókörnyezet-tervező eszközeit.
Tartalmazza Windows App SDK a WinUI 3-at?
Igen. A WinUI 3 a Windows App SDK részeként érkezik.
Tartalmazza a Windows App SDK a WinUI-t az UWP-hez?
Nem. A WinUI for UWP az UWP platform része.
A WinUI for UWP és a WinUI 3 ugyanarra a technológiára épül?
Nem egészen. Bár a WinUI 3 a WinUI for UWP kódbázisból indult, ezek különböző technológiák. Mindkettő XAML-alapú felhasználói felületi keretrendszer, amely .NET-tel és C++-szal is működik, de a UWP-hez készült WinUI és a WinUI 3 nem kompatibilis egymással.
Használhatom a WinUI 3-at Windows App SDK használata nélkül?
Nem. A WinUI 3 a Windows App SDK részeként érhető el.
Használhatom a WinUI 3-at csomagolatlan alkalmazásokban?
Igen. A WinUI 3 és számos Windows App SDK API csomagolatlan alkalmazásokban működik. Egyes Windows képességek azonban csomagidentitást igényelnek, és a keretrendszerfüggő csomagolatlan alkalmazásoknak inicializálnia kell a Windows App SDK futtatókörnyezetet. Hasonlítsa össze a Csomagolás áttekintése és a csomagidentitást igénylő funkciók beállítását.
Mi a különbség az XAML-szigetek és a WinUI 3 között?
A WinUI 3 a Windows App SDK részét képező felhasználói felületi keretrendszer. Az XAML-szigetek olyan üzemeltetési technika, amellyel egy meglévő asztali alkalmazás XAML-tartalmat helyezhet el a felhasználói felület mellett egy másik keretrendszerből.
A kifejezés hivatkozhat az UWP XAML-vezérlőket üzemeltető régi rendszer XAML-szigetekre, vagy a támogatott asztali gazdagépeken Windows App SDK vezérlőket üzemeltető WinUI XAML-szigetekre. Az API-k, a névterek és a gazdagép követelményei eltérőek.
Ha létrehozok egy WinUI 3-alkalmazást, modern megjelenésű lesz Windows 11-en és Windows 10-en is?
A WinUI 3 vezérlők a Fluent stílust használják a Windows 10 és a Windows 11 támogatott verzióiban, csomagolt és csomagolatlan alkalmazásokban is. Egyes operációsrendszer-hatások és viselkedések Windows verziótól függően eltérnek. A Mica például a Windows 11-ben érhető el, a Windows 10-ben pedig egyszínű háttérre vált.
Igen. A Desktop Acrylic a Windows 10 1809-es vagy újabb verziójú kiadásaiban támogatott. A Mica használatához Windows 11 szükséges, Windows 10 rendszeren pedig egyszínű témaszínre vált. A háttér alkalmazása előtt futásidőben hívja meg a(z)
MicaController.IsSupportedvagyDesktopAcrylicController.IsSupportedelemet. Lásd A Mica vagy akril anyagok alkalmazása asztali alkalmazásokban Windows 11 esetén.
Hol találom a WinUI 3-mintákat?
Lásd: Minta és erőforrások. Néhány figyelemre méltó adattár:
- WindowsAppSDK-Samples: Bemutatja, hogyan használhatók adott Windows App SDK API-készletek.
- Windows témakörspecifikus minták: A WinUI 3 jegyzetalkalmazás-oktatóanyagban használt mintát tartalmazza.
- WinUI 3 galéria: A WinUI és a Windows App SDK bemutatása. A Microsoft Store is elérhető.
Ha már jelentős befektetést fektettem be a WPF, akkor továbbra is WPF kell használnom, vagy fontolóra kell venni a WinUI 3-ra való migrálást?
Ha már sokat fektetett be a WPF-be, használhatja továbbra is a meglévő alkalmazásokhoz. WPF egy kiforrott, stabil keretrendszer, amelyet széles körben használnak Windows asztali alkalmazások létrehozásához.
A GitHub Copilot frissítése segítségével felmérheti, majd korszerű .NET-re frissítheti a .NET Framework-alapú WPF-alkalmazást. Tekintse át a létrehozott tervet, és ellenőrizze az alkalmazás minden módosítását.
Ha új WPF-alkalmazást készítek, elavultnak fog tűnni a többi új Windows-alkalmazáshoz képest?
Ha 9-.NET vagy újabb verziójú WPF alkalmazást fejleszt, biztosíthatja, hogy az alkalmazás megfeleljen a Windows 11 elegáns, modern megjelenésének. Az új Fluent téma WPF-hez egy modern Windows 11-es esztétikai stílust vezet be, integrált Világos/Sötét mód és a rendszer kiemelő színének támogatásával. Ez modernizálja az alkalmazás megjelenését, és kifinomult, egységes felhasználói élményt nyújt.
A csapatom kényelmesen készít WinForms-alkalmazásokat, és megfelel az igényeinknek. Érdemes megfontolnunk a WinUI 3-ra vagy más keretrendszerbe való migrálást?
Ha a WinForms megfelel az igényeinek, és csapata jól érzi magát benne, továbbra is használhatja a WinFormst a meglévő alkalmazásokhoz. A WinForms egy kiforrott és stabil keretrendszer, amelyet széles körben használnak Windows asztali fejlesztéshez.
A WinForms csapata továbbra is befektet a platformba. A legutóbbi és a folyamatban lévő munka a következőket foglalja magában:
- Aszinkron űrlap és párbeszédpanel API-k
- Sötét mód és vizuális stílus támogatása
- Akadálymentességi, nagy DPI-s, elrendezési és tervezői fejlesztések
- A vágólap és a
DataObjectkorszerűsítése
Platformfüggetlen natív fejlesztés
Mi lehet az oka a platformfüggetlen, natív alkalmazások létrehozásának, amelyek Windows célként szerepelnek?
Ha több operációsrendszer-platformon célozza meg a felhasználókat, a platformfüggetlen alkalmazások .NET MAUI vagy React Natív használatával történő létrehozása számos előnyt kínálhat:
- Elér: A platformfüggetlen alkalmazások nagyobb közönséget érnek el különböző eszközökön és operációs rendszereken.
- Kód újrafelhasználása: A kód platformok közötti újrafelhasználása csökkenti a fejlesztési időt és a költségeket. Az Windows, Android, iOS és macOS rendszerekhez készült különálló alkalmazások létrehozása rendkívül költséges lehet.
- Konzisztens felhasználói élmény: A platformfüggetlen keretrendszerek egységes megjelenést és érzetet biztosítanak a különböző platformokon.
- Integráció: A platformfüggetlen alkalmazások továbbra is integrálhatók a platformspecifikus szolgáltatásokkal, hogy átfogó élményt nyújtsanak.
Meg vagyok győződve arról, hogy .NET MAUI alkalmazások jól fognak futni Windows?
Amikor Windows .NET MAUI alkalmazást hoz létre, a kimenet WinUI 3-at használ. A fejlesztés során a .NET MAUI egyetlen .NET felületet kínál a platformokon, de platformspecifikus kódot hoz létre a motorháztető alatt.
Hogyan .NET MAUI biztosíthat natív eszköz API-kat minden platformon?
.NET MAUI egységes .NET élményt nyújt Windows, iOS, Android és macOS rendszereken. Platformfüggetlen API-kat kínál olyan gyakori képességekhez, mint a tárolás, a hálózatkezelés és az eszközérzékelők. Platformspecifikus API-kat is hívhat, vagy speciális implementációkat biztosíthat az egyes platformokhoz.
Kezdhetem a WinUI 3-mal, és később integrálhatom a .NET MAUI-t, ha idővel többplatformos forgatókönyveket is szeretnék megcélozni?
Jelenleg nem. Bár .NET MAUI WinUI 3-at használ Windows futtatásakor, a több platformot célzó csapatoknak .NET MAUI vagy a React Native for Desktop használatával kell kezdődnie.
Csapatunk erős webes előtérbeli fejlesztési készségekkel rendelkezik. Érdemes megfontolnunk a React Native for Desktop használatát?
Az erős webes fejlesztési tapasztalattal rendelkező csapatok érdemes lehet figyelembe venni a React Native for Desktopot. Tartalmazza a React Native-t Windows és macOS rendszerekhez. A "Learn once, write anywhere" (Tanulás egyszer, bárhol írás) megközelítéssel a meglévő JavaScript-, TypeScript- és React-képességek natív Windows és macOS-alkalmazások készítésére használhatók.
A React Native for Desktop közvetlenül natív primitívek számára rendereli a felhasználói felületet, így natív teljesítményt és platformképességeket biztosít.
A kezdéshez lásd a React Native for Desktop dokumentációját.
Támogatja-e a React Native for Desktop más Windows eszközöket?
A React Native for Windows támogatja a kompatibilitási dokumentációjában felsorolt Windows verziókat. Ellenőrizze, hogy az eszközcsalád támogatja-e a React natív verzióját a megcélzott Windows verzióhoz, és ne feltételezze, hogy minden Windows eszköz támogatott.
Mit használjak, ha olyan alkalmazásokat szeretnék készíteni, amelyek működnek Windows és Xbox rendszeren?
Xbox-alkalmazásokhoz használja az UWP-t, és vegye figyelembe a Xbox-specifikus UWP-korlátozásokat. A játékfejlesztéshez használja a Microsoft Játékfejlesztő készlet.
Ha Windows és Surface Hubon működő alkalmazásokat szeretnék létrehozni?
A standard Teams-szobákat vagy Surface Hub-környezetet futtató Surface Hubhoz használjon olyan UWP-alkalmazást, amely megfelel a Surface Hub alkalmazás követelményeinek. A Windows 11 Pro vagy Enterprise használatával konfigurált Surface Hub 3 támogatott asztali alkalmazástechnológiákat futtathat, így nem az UWP az egyetlen lehetőség ebben a konfigurációban.
Hibrid és webes fejlesztés
Mik azok a hibrid alkalmazások, és miért érdemes megfontolni a létrehozásukat?
A hibrid alkalmazások a legjobb webes és natív alkalmazásfejlesztést ötvözik. Alapjuk olyan webes technológiákkal épül fel, mint a HTML, a CSS és a JavaScript, és egy natív tárolóba vannak csomagolva, amely access bizonyos natív platformfunkciókhoz és hardverekhez. Alkalmazás-áruházakon keresztül is terjeszthetők.
A fő előnye, hogy a hibrid alkalmazások lehetővé teszik egyetlen alkalmazás összeállítását, amely több natív platformon és a weben is futtatható, csökkentve a fejlesztési időt és a költségeket. A hibrid alkalmazásfejlesztési platformok például a következők:
- Elektron asztali alkalmazásokhoz
- Ionic mobilalkalmazásokhoz
- .NET MAUI Blazor Hybrid platformfüggetlen alkalmazásokhoz
Hogyan építek natív érzetű progresszív webalkalmazásokat Windows?
Lásd: Webfejlesztés Windows rendszeren és Progresszív webalkalmazások áttekintése.
Mi az .NET MAUI Blazor hibrid alkalmazás?
A .NET MAUI a Blazor-alkalmazások natív módon futtathatók Windows, iOS, Android és macOS rendszeren. Ez lehetővé teszi olyan hibrid ügyfélalkalmazások létrehozását, amelyek egyetlen natív ügyfélalkalmazásban egyesítik a Blazort és .NET MAUI összetevőket, teljes hozzáféréssel a natív platform képességeihez.
További információ: ASP.NET Core Blazor Hybrid.
Az .NET MAUI hibrid alkalmazás webes összetevőit a Blazor használatával kell létrehozni
Nem. A .NET 9-től kezdve a .NET MAUI tartalmaz egy HybridWebView vezérlőt, amely lehetővé teszi más JavaScript-alapú felhasználói felületek natív alkalmazásokon belüli üzemeltetését.
Ez lehetővé teszi az Angular, React, Vue vagy más HTML/JavaScript-alkalmazások üzemeltetését egy .NET MAUI alkalmazásban. A hibrid vezérlő kapcsolatot biztosít a C# és a JavaScript között, így a C#-kód meghívhatja a JavaScript-függvényeket, és fordítva.
Bármely más natív alkalmazástípus üzemeltethet hibrid Blazor-összetevőket?
Igen. WPF és WinForms-alkalmazások a Blazor hibrid összetevőit is üzemeltethetik, lehetővé téve a modern webes felhasználói felület hozzáadását a meglévő alkalmazásokhoz. Ez nem támogatott WPF vagy .NET-keretrendszerre épülő WinForms-alkalmazások esetében.
A teljes alkalmazásomnak hibrid alkalmazásnak kell lennie, vagy kombinálhatom és egyeztethetem a natív és hibrid összetevőket?
A natív és a hibrid összetevők keverhetők egy alkalmazáson belül. Előfordulhat például, hogy egy alkalmazás magja .NET MAUI összetevőkkel épül fel, míg a hibrid összetevők további funkciókat biztosítanak. Ez lehetővé teszi a natív összetevők teljesítményének és képességeinek kombinálását a hibrid összetevők rugalmasságával és költséghatékonyságával.
Mi a választásom .NET-alapú webalkalmazások létrehozására, amelyek nagyszerűen mutatnak a modern böngészőkben a Windows?
Web apps bármely ügyfélalkalmazás-platform legszélesebb körét kínálja. A gyönyörű .NET webalkalmazások létrehozásának lehetőségei a következők:
- ASP.NET Core-alkalmazások a Razor Pages használatával
- ASP.NET Core MVC-alkalmazások
- ASP.NET Core Blazor-alkalmazások üzemeltetési modellbeállításokkal:
- Blazor WebAssembly (egy .NET alapú keretrendszer, amely lehetővé teszi webes alkalmazások futtatását közvetlenül a böngészőben)
- Blazor Server
A Blazor üzemeltetési modelljei most már konfigurálhatók az összetevők szintjén, így olyan forgatókönyvek is engedélyezhetők, mint a Blazor WebAssembly-összetevők üzemeltetése a Blazor Server-alkalmazásokban.
További részletekért tekintse meg a ASP.NET Core dokumentációját.
Válasszon egy megközelítést, és ismerje meg Microsoft befektetéseit
A Windows megcélzott alkalmazások létrehozásához rengeteg keretrendszer-lehetőség áll rendelkezésre. Hogyan dönthetek?
Windows egy nyílt platform, amely számos technológiát támogat. Íme néhány feltétel, amely segíthet a platform kiválasztásában:
- Windows-fókuszú vagy platformfüggetlen fejlesztést végez?
- Milyen nyelvekkel vagy készségekkel rendelkezik már – .NET, JavaScript, valami más?
- Hozzáférésre van szüksége Windows-specifikus API-khoz?
- Melyik keretrendszer képességei felelnek meg a legjobban az alkalmazás követelményeinek?
- További összehasonlító tényezőkért tekintse meg ezt a táblázatot .
Számos üzleti alkalmazás esetében a csapatok gyakran a meglévő készségek és a csapat által a legkényelmesebb használat alapján választanak.
Hogyan választhatom ki a webalkalmazásom legjobb fejlesztési megközelítését?
A webalkalmazás fejlesztési megközelítésének kiválasztásakor vegye figyelembe az alábbiakat:
- Blazor ajánlott a frontend webalkalmazások fejlesztéséhez .NET-tel. Lehetővé teszi az előtérbeli és a háttérrendszer .NET használatával történő összeállítását, időt és költséget takarítva meg, és különösen jó a nagyvállalati alkalmazások számára.
- A JavaScript web apps akkor is van értelme, ha meglévő JavaScript-készségeket szeretne használni, vagy integrálnia kell a meglévő JS-kódtárakkal vagy -keretrendszerekkel.
- A régebbi keretrendszereket, például a Web Formst, az MVC-t vagy a Razor Pagest használó meglévő alkalmazások továbbra is támogatottak, és továbbra is fejleszthetők és karbantarthatók.
Ki készít alkalmazásokat a WinUI 3 használatával?
Microsoft Fényképek egy dokumentált példa. Az alkalmazás az UWP-ről a Windows App SDK migrált, és továbbra is a WinUI 3-at használja. Az architektúrával és a migrálással kapcsolatos részletekért lásd: Microsoft Fotók: Migrálás UWP-ről Windows App SDK.
Ki készíti ma a .NET MAUI alkalmazásokat?
A szervezetek .NET MAUI használnak platformfüggetlen alkalmazások létrehozására Androidhoz, iOS-hez, macOS-hez és Windows. Példák az .NET ügyfélbemutatóban.
Ki fejleszt ma WPF alkalmazásokat?
A Microsoft Visual Studio felhasználói felületének többsége WPF van kialakítva. Maga a Visual Studio IDE egy összetett, nagy teljesítményű WPF alkalmazás egyik fő példája.
Ki készít ma Blazor-alkalmazásokat?
A GE Digital FlightPulse légitársasági rendszere a Blazort használja a pilóták által látottak háttérkonfigurációjához, így az érzékelőadatok és az elemzések közvetlenül a pilótákhoz való eljuttatásával javítják a biztonságot és a hatékonyságot.
További Blazor-ügyféltörténetek a .NET webhelyen.
Nyelvválasztás (.NET és C++)
C# vagy C++ elemet kell használnom a Windows alkalmazásomhoz?
A legtöbb esetben használja a C# (.NET) parancsot. A C# gyorsabb fejlesztést, memóriabiztonságot, gazdag kódtárakat és kiváló eszközhasználatot biztosít. A legtöbb Windows alkalmazás – beleértve a WinUI 3, a WPF, a WinForms és a .NET MAUI alkalmazásokat – a legjobban a C# használatával készült.
A C++- ot akkor használja, ha közvetlen hardverhozzáférésre, minimális futásidejű többletterhelésre vagy meglévő C++ kódbázisokkal való együttműködésre van szüksége. A C++ forgatókönyvek közé tartoznak a játékmotorok (DirectX), az illesztőprogramok, a rendszerszintű segédprogramok és a teljesítmény szempontjából kritikus összetevők.
Tényező C# (.NET) C++ Fejlesztési sebesség ✅ Gyorsabb – felügyelt memória, gazdag ökoszisztéma ⚠️ Lassabb – manuális erőforrás-kezelés Futásidejű teljesítmény ✅Kiváló a modern .NET-tel (AOT, Span<T>) ✅ A lehető legjobb — nincsenek szemétgyűjtési szünetek Memóriabiztonság ✅ Szemétgyűjtés ⚠️ Kézikönyv – szivárgások és biztonsági rések kockázata WINDOWS API-hozzáférés ✅ C#/WinRT-vetítéssel ✅ C++/WinRT-vetítéssel WinUI 3-támogatás ✅ Teljes körű támogatás ✅ Teljes támogatás a C++/WinRT használatával Platformfüggetlen ✅.NET Windows, Linux, macOS rendszeren fut ✅ Platformspecifikus kóddal Legjobb a számára Üzleti alkalmazások, CRUD, szolgáltatások, felhasználói felületi alkalmazások Játékok, illesztőprogramok, rendszereszközök, alacsony késés Mindkettőt kombinálhatja: létrehozhatja az alkalmazást C# nyelven, és meghívhatja a teljesítmény szempontjából kritikus natív kódot a P/Invoke (CsWin32) vagy egy C++/WinRT-összetevő használatával.
Hogyan hívhatom meg a Win32 API-kat a C#-ból?
Használja a CsWin32 forrásgenerátort, amely típusbiztos P/Invoke aláírásokat hoz létre a létrehozáskor. Hozzáadhatja a
Microsoft.Windows.CsWin32NuGet-csomagot, listázhatja a fájlbanNativeMethods.txtszükséges API-kat, és meghívhatja őket egy létrehozottPInvokeosztályon keresztül.A CsWin32 bármilyen C#-projektben lecseréli a kézzel írt
[DllImport]deklarációkat, és működik, beleértve a WinUI 3, a WPF, a WinForms és a konzolalkalmazásokat. Részletes útmutatóért tekintse meg a Win32 API-k meghívását egy C# Windows-alkalmazásból (CsWin32).
Mi az a C++/WinRT, és mikor érdemes használni?
A C++/WinRT egy standard C++17 nyelvi kivetítés Windows-futtatókörnyezet API-khoz. Használja Windows WinRT API-kat használó vagy létrehozó C++-alkalmazások létrehozásakor. A C++/CX és a Windows-futtatókörnyezet C++ sablontár (WRL) helyébe lép.
A következő esetekben válassza a C++/WinRT lehetőséget:
- Ön egy C++-os WinUI 3-alkalmazást készít
- Más nyelvek által használt Windows-futtatókörnyezet összetevőket kell létrehoznia
- Áttelepítés C++/CX környezetből
Mi az a C#/WinRT, és mikor van rá szükségem?
A C#/WinRT winRT-vetítési támogatást nyújt a C# számára. A legtöbb esetben nem kommunikál vele közvetlenül – .NET Windows célalkalmazások automatikusan hozzáférést kapnak a WinRT API-khoz a cél keretrendszerbeli monikereken (TFM-ek) keresztül. A C#/WinRT-re kifejezetten szükség van, ha C#-ban írt Windows-futtatókörnyezet-összetevőket hoz létre, vagy ha külső féltől származó WinRT-összetevőkhöz generál interop szerelvényeket.
Csomagolás, üzembe helyezés és frissítések
Mi a különbség a külső helyen csomagolt, csomagolatlan és csomagolt alkalmazások között?
A csomagolt alkalmazások fájlokat, identitásokat és üzembehelyezési információkat tartalmaznak egy csomagban, például az MSIX-ben. A csomagolatlan alkalmazások a Windows csomagrendszeren kívüli telepítőt vagy üzembe helyezési folyamatot használnak, és alapértelmezés szerint nem rendelkeznek csomagadentitással. A külső helyre csomagolt alkalmazás kis identitáscsomagot használ, miközben megtartja a külső helyen található binárisokat, valamint a meglévő telepítőjét és frissítési folyamatát.
A követelményekről és a kompromisszumokről lásd a Csomagolás áttekintését .
Szükségem van csomagidentitásra?
Ez az alkalmazás által használt Windows funkcióktól függ. A csomagidentitás olyan forgatókönyvekhez szükséges, mint a csomagolt háttérfeladatok, a megosztási célok, az indítási feladatok, az egyéni helyi menücsomag-bővítmények, a jegyzékalapú fájltípus- és protokolltársítások, valamint számos Windows AI API. A Windows App SDK identitás nélkül is támogatja a push értesítések korlátozott előtérbeli forgatókönyveit, de a háttérbeli kézbesítéshez és a COM-aktiváláshoz identitás szükséges. A WinUI 3 és a helyi alkalmazásértesítések csomagadentitás nélkül is működhetnek.
Lásd a csomagazonosságot igénylő jellemzők. Ha identitásra van szüksége, de meg kell őriznie egy meglévő telepítőt, fontolja meg a külső helyen való csomagolást.
Mi a különbség a keretrendszerfüggő és az önálló üzembe helyezés között?
A keretrendszerfüggő alkalmazások az eszközön külön telepített Windows App SDK futtatókörnyezeti csomagokat használnak. Ez csökkenti az alkalmazás üzembe helyezésének méretét, és lehetővé teszi a telepített keretrendszer számára a karbantartási frissítések fogadását. Egy önálló alkalmazás magában hordozza a Windows App SDK függőségeit, ami növeli az üzembe helyezés méretét, és az alkalmazás közzétevője felelőssé teszi a frissítések Windows App SDK új alkalmazásverziókkal való terjesztéséért.
A további MSIX-csomagoktól, például a Singleton-csomagtól függő API-k külön üzembe helyezési vagy futtatókörnyezeti támogatási ellenőrzéseket igényelhetnek még önálló alkalmazásokban is. A csomagolás és a futtatókörnyezet telepítése külön döntések. Lásd Windows App SDK üzembe helyezésének áttekintését.
A WinUI 3 alkalmazás automatikusan frissül a végfelhasználók számára?
Egy WinUI 3-alkalmazás terjeszthető a Microsoft Store-on keresztül, egy
.appinstallerfájlban, illetve MSI-csomag vagy telepítőprogram formájában. Az áruházcsomagok frissíthetők Microsoft Store karbantartással, az Áruház és a szervezeti beállítások függvényében. Az.appinstallerüzembe helyezés csak akkor támogatja az automatikus frissítéseket, ha aUpdateSettingsindításkori vagy háttérbeli ellenőrzéseket konfigurálnak. Az MSI-nek és a telepítési környezeteknek saját frissítési mechanizmust kell biztosítaniuk vagy integrálniuk.
Használhatom a Windows App SDK-t MSBuild használata nélkül?
Igen, bizonyos helyzetekben. A WinUI 3 XAML-projektekhez jelenleg msBuild szükséges, bár Visual Studio nincs szükség, és
dotnet buildmeghívhatja az MSBuild parancsot a parancssorból. A C++ és CMake-projektek nem XAML-Windows App SDK API-jait az előzetes verziójú Windows-alkalmazás fejlesztői parancssori felületen használhatja, vagy manuálisan integrálhatja a futtatókörnyezetet.
Windows AI (mesterséges intelligencia)
Hogyan választhatok Windows AI API-k, Foundry Local és Windows ML között?
Az első három technológia a Windows rendszerhez készült Microsoft Foundry része. Ezeket kombinálhatja egymással és a felhőmodellekkel ugyanabban az alkalmazásban:
- A Windows AI API-kat olyan használatra kész képességekhez használhatja, amelyek modelljeit és hardveres gyorsítását Windows kezeli.
- A Foundry Local használatával helyileg felderítheti, letöltheti és futtathatja a támogatott nyílt forráskódú nyelvi és beszédmodelleket.
- A Windows ML használatával saját ONNX-modelleket futtathat végrehajtási szolgáltatókkal az elérhető CPU-, GPU- és NPU-hardverekhez.
- Ha felhőalapú modellekre, lekéréses, központosított irányításra vagy a céleszközön nem elérhető képességekre van szüksége, használja a Microsoft Foundryt, amely egy külön felhőbeli AI-platform.
Hasonlítsa össze a Windows AI-megoldás kiválasztásával elérhető lehetőségeket. Fontolja meg a modellképességet, az adatvédelmet, a kapcsolatot, a késést, a hardveres lefedettséget, az üzembe helyezés méretét és az üzemeltetési költségeket.
A Windows AI-funkciókhoz szükséges-e Copilot+ PC?
Nem mindegyiket. Sok Windows AI API-hoz Copilot+ PC van szükség, de egyes API-k bizonyos GPU-kat vagy processzorokat is támogatnak. A Foundry Local és a Windows ML szélesebb körű hardverkonfigurációkat támogat, az operációs rendszer, a modell, a futtatókörnyezet és a végrehajtási szolgáltató aktuális követelményeitől függően.
Ellenőrizze az Windows AI API hardvertáblát, valamint az adott API vagy modell követelményeit. Észlelje futásidőben a támogatást és a modell készenlétét, és biztosítson nem AI-alapú, helyi modellre épülő vagy felhőalapú tartalék megoldást, ha a funkció nem érhető el.
Futtathatók helyileg és offline Windows AI-funkciók?
Igen. Windows AI API-k, a Foundry Local és a Windows ML következtetést futtathat a felhasználó eszközén, ami csökkentheti a késést, és helyien tarthatja a bemeneti adatokat. Egyes modelleket vagy végrehajtási szolgáltatókat először le kell tölteni vagy ki kell telepíteni, és internetkapcsolatra lehet szükség a beállítás vagy a karbantartás során. A felhőalapú AI-szolgáltatásoknak kapcsolatra van szükségük, és az adatkezelési feltételeknek megfelelően adatokat kell küldeni a szolgáltatásnak.
Tájékoztassa a felhasználókat arról, hogy mikor van szükség modellletöltésre, és mikor hagyják el az adatokat az eszközről. Ne írjon le egy funkciót offline módúként, amíg nem tesztelte a teljes első futtatási, frissítési és tartalékélményt.
Segíthetnek az AI-eszközök egy Windows-alkalmazás létrehozásában vagy modernizálásában?
Igen. Az AI-kódolási ügynökök segíthetnek a projektek összeállításában, az API-k magyarázatában, a kód áttelepítésében, a tesztek létrehozásában és a buildelési problémák diagnosztizálásában. Használja az AI által támogatott Windows fejlesztési útmutatót a GitHub Copilot, a WinUI-ügynök beépülő modulhoz, a Microsoft Learn MCP-kiszolgálóhoz, a migrálási munkafolyamatokhoz és az AI által támogatott teszteléshez.
Tekintse át és tesztelje a létrehozott kódot, ahogyan bármilyen más közreműködést. Különösen ellenőrizze az API-neveket és -verziókat, a csomagképességeket, a biztonsági szempontból érzékeny kódot, az akadálymentességet és az UWP-to-WinUI 3-as helyettesítéseket.
Mit érdemes figyelembe vennem egy MI-vel támogatott funkció bevezetése előtt?
Határozza meg a szolgáltatás tervezett használatát és korlátozásait, értékelje a minőséget és a biztonságot reprezentatív adatokkal, szükség esetén tegye közzé az AI viselkedését, védje a felhasználói adatokat, és tartalékot biztosítson, ha a modell vagy a szükséges hardver nem érhető el. A titkos információkat és az emelt jogosultságú szolgáltatás-hitelesítő adatokat ne tárolják az ügyfélalkalmazásokban, és követeljék meg a felhasználói megerősítést a jelentős következményekkel járó vagy visszafordíthatatlan műveletek előtt. Lásd: Felelős generatív AI-fejlesztés a Windows és a biztonság területén, valamint a felelős mesterséges intelligencia Windows fejlesztéshez.
Teljesítmény és optimalizálás
Mi a teendő, hogy a Windows-alkalmazásom jól érezze magát a végfelhasználók számára?
Tekintse meg Windows alkalmazásfejlesztés – Ajánlott eljárások és Windows alkalmazások teljesítményével és alapjaival kapcsolatos áttekintést.
Compatibility
A felhasználóimnak frissíteniük kell majd Windows a WinUI 3-alkalmazásom használatához?
A Windows App SDK által támogatott minimális kompatibilis operációs rendszer a Windows 10, 1809-es verzió, 17763-as build. Microsoft támogatáshoz támogatott Windows App SDK kiadásra van szükség a legújabb karbantartási frissítéssel, valamint egy Windows kiadással, verzióval és karbantartási csatornával, amely továbbra is támogatott. Az egyes API-k újabb Windows verziót vagy adott hardvert igényelhetnek. Lásd Windows App SDK támogatási és kiadási csatornákat.
Megcélzhatom az Arm64-et a WinUI 3-alkalmazásommal?
Igen. Natív Arm64-alkalmazás létrehozása a legjobb teljesítmény és hatékonyság érdekében. Az x64-függőségekkel rendelkező nagy C++ kódbázis esetén az Arm64EC lehetővé teszi a modulok növekményes migrálását. Windows 11 az Armen számos meglévő x86- és x64-alkalmazást is futtathat a Prizma emuláción keresztül, de tesztelnie kell a teljesítményt és a kompatibilitást a reprezentatív Arm-eszközökön.
Elavulások és migrálások
Elavult az UWP/WinUI az UWP-hez?
Az UWP és a WinUI 2 formálisan nem elavult. Visual Studio 2026 támogatja az UWP-t modern .NET és natív AOT használatával, míg a WinUI 2.8 továbbra is az UWP legújabb stabil WinUI-kiadása. A Microsoft azonban a WinUI 3-at és a Windows App SDK javasolja az új általános célú Windows asztali alkalmazásokhoz.
Általánosan elérhető a Natív AOT-alapú modern .NET UWP-támogatása, amely a 2026-os Visual Studio alapértelmezett C# UWP-projekttípusa. Egy meglévő UWP-alkalmazás áthelyezése .NET natívról modern .NET egy külön modernizációs lépés a felhasználói felület WinUI 3-ra való migrálásától. Lásd: UWP-alkalmazás modernizálása .NET és natív AOT használatával.
Mikor kell migrálnom egy UWP/WinUI for UWP alkalmazást a WinUI 3-ba?
Az UWP-fejlesztők nem érezhetik a migrálásra nehezedő nyomást, ha elégedettek az UWP-vel és annak funkciókészletével – sok alkalmazás esetében a megfelelő választás lehet az UWP használata.
Azokat az alkalmazásokat, amelyek a legújabb Windows platform és .NET beruházások előnyeit szeretnék kihasználni, érdemes lehet áttérni a WinUI 3-ra és a Windows App SDK. Lásd: Migrálás az UWP-ről a Windows App SDK-ra.
Mikor *ne* migráljak egy UWP + WinUI for UWP alkalmazást WinUI 3-ra?
Folytassa az UWP használatát, ha a céleszköz vagy alkalmazásmodell megköveteli azt, például Xbox alkalmazásokat, HoloLens 2D-s alkalmazásokat vagy a szabványos Surface Hub-környezethez tartozó alkalmazásokat. Windows IoT Enterprise támogatja az asztali alkalmazástechnológiát, beleértve a Windows App SDK, így az IoT-cél önmagában nem ok az UWP használatára.
Már nem támogatott a WPF?
Nem. WPF támogatott, és továbbra is funkció-, teljesítmény-, akadálymentességi és Fluent-stílusú fejlesztéseket kap a modern .NET. Továbbra is jó választás a meglévő WPF alkalmazások és az új alkalmazások számára, amelyek követelményei megfelelnek WPF. Az új általános célú Windows asztali alkalmazások esetében Microsoft elsődleges ajánlása a WinUI 3 és a Windows App SDK. Tekintse meg a WPF ütemtervet GitHub.
Használaton kívüli a WinForms?
Nem. A WinForms támogatott, és továbbra is megkapja a funkciófrissítéseket. Lásd a Windows Forms ütemtervet a GitHubon.
A Windows-futtatókörnyezet (WinRT) elavult?
Nem. A WinRT egy alkalmazás bináris felülete (ABI), amely lehetővé teszi a több nyelv közötti interopációt. A WinRT a COM fejlődése, és a Windows App SDK a legtöbb funkcióját a WinRT API-kon keresztül biztosítja.
Kibocsátási megjegyzések
Hol találom a Windows App SDK kiadási megjegyzéseit?
Lásd a Windows App SDK kiadási megjegyzéseit a stabil, előzetes és kísérleti kiadásokhoz. A Windows fejlesztőknek szóló újdonságok oldal összefoglalja a legújabb Windows SDK-t, Windows App SDK, WinUI 3-at, eszköz- és platformfrissítéseket.
Kapcsolódó tartalom
Windows developer