As versões do .NET são compatíveis com versões anteriores?

8

Ao longo dos anos, várias versões do .NET foram implantadas em minhas máquinas cliente via WSUS. Agora, parece que em muitas máquinas essas instalações foram suspensas e certas atualizações de segurança do .NET estão falhando.

Eu verifiquei que posso executar a ferramenta de limpeza do .NET para me livrar de todas as instalações do .NET em um cliente e, em seguida, posso implantar o .NET 3.5 via WSUS. Isso parece ter resolvido os problemas que estou tendo na máquina que experimentei.

Então a questão é: se eu tenho o .NET 3.5, há alguma razão para também ter versões anteriores instaladas?

    
por Boden 11.03.2010 / 17:44

3 respostas

14

Compatibilidade retroativa é um termo ruim para usar. .NET 1.0, 1.1 e 2.0 são seus próprios frameworks que não têm compatibilidade entre si. O .NET 3.0 e 3.5 são conjuntos super do framework 2.0, usando o framework base do .NET 2.0, com DLLs adicionais para fornecer recursos adicionais (3.0 incluíam coisas como WCF e WWF, 3.5 tinham coisas como LINQ). Em termos de requisitos de aplicativos:

  • 1.0 aplicativos exigem que o .NET 1.0 seja instalado.
  • 1.1 aplicativos requerem que o .NET 1.1 seja instalado.
  • Os aplicativos
  • 2.0 exigem que o .NET 2.0, 3.0 ou 3.5 esteja instalado.
  • Os aplicativos
  • 3.0 exigem que o .NET 3.0 ou o 3.5 sejam instalados.
  • 3.5 aplicativos exigem que o .NET 3.5 seja instalado.

Tenho quase certeza de que o .NET 4.0 segue o mesmo modelo do 2.0 - 3.5 (2.0 base com dlls de recursos adicionais). Portanto, instalar o .NET 3.5 cobrirá você para aplicativos .NET 2.0 - 3.5. Você precisará instalar o .NET 1.1 se você executar qualquer aplicativo 1.1 (mesmo para aplicativos 1.0).

    
por 11.03.2010 / 19:32
2

O .NET é compatível com versões anteriores, mas você precisa comparar as versões do framework. O que eles afirmam é que é compatível lado a lado, que é o problema que você enfrenta. Há definitivamente um motivo para ter outras versões instaladas. Um aplicativo pode ser gravado para segmentar uma versão específica e, se essa versão não estiver presente em uma máquina, o aplicativo falhará.

    
por 11.03.2010 / 17:47
-1

Não, o .net não é compatível com versões anteriores. A MS reserva-se o direito de fazer alterações. 2,0 u para 3,5 são IIRC, mas isso é mais um "lado de sorte". A concet é que todos os frameworks instalados são necessários, e um aplicativo tem como alvo o framework em que foi compilado - isso permite que o MS limpe novas versões e introduza mudanças não compatíveis.

    
por 11.03.2010 / 18:18

Tags