Sdílet prostřednictvím


Rozdíly u WPF .NET

Tento článek popisuje rozdíly mezi windows Presentation Foundation (WPF) v .NET a .NET Framework. WPF pro .NET je opensourcová architektura rozvětvovaná z původního zdrojového kódu WPF pro .NET Framework.

Existuje několik funkcí rozhraní .NET Framework, které .NET nepodporuje. Další informace o nepodporovaných technologiích naleznete v tématu technologie rozhraní .NET Framework nedostupné v rozhraní .NET.

Projekty ve stylu sady SDK

.NET používá soubory projektů ve stylu sady SDK. Tyto soubory projektu se liší od tradičních souborů projektu rozhraní .NET Framework spravovaných sadou Visual Studio. Pokud chcete migrovat aplikace WPF rozhraní .NET Framework do .NET, musíte projekty převést. Další informace najdete v tématu Postup upgradu desktopové aplikace WPF na .NET 7.

Odkazy na balíčky NuGet

Pokud vaše aplikace .NET Framework vypíše závislosti NuGet v souboru packages.config, migrujte do <PackageReference> formátu:

  1. Ve Visual Studio otevřete panel Průzkumník řešení.
  2. V projektu WPF klikněte pravým tlačítkem na packages.config>Migrovat packages.config do PackageReference.

místní nabídce Průzkumníka řešení v sadě Visual Studio zobrazující položku Migrovat packages.config.

Zobrazí se dialogové okno zobrazující počítané závislosti NuGet nejvyšší úrovně a dotaz, které další balíčky NuGet mají být povýšeny na nejvyšší úroveň. Vyberte OK a soubor packages.config se odebere z projektu a <PackageReference> prvky se přidají do souboru projektu.

Pokud váš projekt používá <PackageReference>, balíčky se neukládají místně ve složce Packages, ukládají se globálně. Otevřete soubor projektu a odeberte všechny prvky <Analyzer>, které odkazují na složku Packages. Tyto analyzátory se automaticky zahrnou do odkazů na balíčky NuGet.

Zabezpečení přístupu k kódu

.NET nepodporuje zabezpečení přístupu kódu (CAS). Všechny funkcionality související s CAS se považují za předpokladu plné důvěry. WPF pro .NET odebere kód související s CAS. Veřejná plocha rozhraní API těchto typů stále existuje, aby se zajistilo, že volání těchto typů budou úspěšná.

Veřejně definované typy související s CAS byly přesunuty ze sestavení WPF do sestavení knihovny .NET Core. Sestavení WPF mají nastaveno předávání typů na nové umístění přesunutých typů.

Zdrojové sestavení Cílové sestavení Typ
WindowsBase.dll System.Security.Permissions.dll MediaPermission
MediaPermissionAttribute
MediaPermissionAudio
MediaPermissionImage
MediaPermissionVideo
WebBrowserPermission
WebBrowserPermissionAttribute
WebBrowserPermissionLevel
System.Xaml.dll System.Security.Permissions.dll XamlLoadPermission
System.Xaml.dll System.Windows.Extension.dll XamlAccessLevel

Poznámka

Aby se minimalizovalo tření přenosu, funkce pro ukládání a načítání informací souvisejících s následujícími vlastnostmi se zachovala v XamlAccessLevel typu.

  • PrivateAccessToTypeName
  • AssemblyNameString