Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
Este artigo descreve as diferenças entre o Windows Presentation Foundation (WPF) no .NET e no .NET Framework. O WPF para .NET é uma estrutura de software livre bifurcada do código-fonte original do WPF para .NET Framework.
Há alguns recursos do .NET Framework que o .NET não dá suporte. Para obter mais informações sobre tecnologias sem suporte, consulte tecnologias do .NET Framework indisponíveis no .NET.
Projetos no estilo SDK
O .NET usa arquivos de projeto no estilo SDK. Esses arquivos de projeto são diferentes dos arquivos de projeto tradicionais do .NET Framework gerenciados pelo Visual Studio. Para migrar seus aplicativos WPF do .NET Framework para o .NET, você deve converter seus projetos. Para obter mais informações, consulte Como atualizar um aplicativo da área de trabalho do WPF para o .NET 7.
Referências do pacote NuGet
Se o aplicativo .NET Framework listar suas dependências do NuGet em um arquivo packages.config, migre para o formato <PackageReference>:
- No Visual Studio, abra o painel do Gerenciador de Soluções
. - Em seu projeto do WPF, clique com o botão direito do mouse em packages.config>Migrar packages.config para PackageReference.
Uma caixa de diálogo será exibida mostrando dependências do NuGet de nível superior calculadas e perguntando quais outros pacotes NuGet devem ser promovidos para o nível superior. Selecione OK e o arquivo packages.config será removido do projeto e <PackageReference> elementos serão adicionados ao arquivo de projeto.
Quando o projeto usa <PackageReference>, os pacotes não são armazenados localmente em uma pasta Pacotes, eles são armazenados globalmente. Abra o arquivo de projeto e remova quaisquer elementos <Analyzer> que se referiam à pasta Pacotes. Esses analisadores são incluídos automaticamente com as referências do pacote NuGet.
Segurança de Acesso ao Código
O CAS (Code Access Security) não é compatível com o .NET moderno, é um conceito somente do .NET Framework. Todas as funcionalidades relacionadas ao CAS são tratadas sob a suposição de confiança total. O WPF para .NET remove o código relacionado ao CAS. A superfície de API pública desses tipos ainda existe para assegurar o sucesso das chamadas a esses tipos.
Tipos relacionados ao CAS definidos publicamente foram movidos para fora dos assemblies do WPF e para os assemblies das bibliotecas do .NET Core. Os assemblies do WPF têm o redirecionamento de tipos definido para o novo local dos tipos movidos.
| Assembly de origem | Assembly de destino | Tipo |
|---|---|---|
| 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 |
Observação
Para minimizar o atrito de adaptação, a funcionalidade para armazenar e recuperar informações relacionadas às propriedades a seguir foi mantida no tipo XamlAccessLevel.
PrivateAccessToTypeNameAssemblyNameString
.NET Desktop feedback