Czy potrzebuję wszystkich wersji Microsoft .NET Framework?

22

Mam 4 wersje Microsoft .NET Framework:

  • 1.1
  • 2.0 z dodatkiem Service Pack 2
  • 3.0 z dodatkiem Service Pack 2
  • 3.5 SP1

Czy potrzebuję ich wszystkich?

Radość Seacat
źródło
Mamy nadzieję, że odpowiedzi mogą się rozwijać w idealnej kolejności instalacji (najprawdopodobniej najniższa wersja w górę).
Synetech
Dodano odpowiedź ... odinstaluj je wszystkie; zainstaluj .NET 4 i wszystko będzie dobrze.
Aaron McIver
1
Wiem, że to pytanie jest stare, ale właśnie wyszukiwarka Google mnie tu przywiodła. Przeczytaj moje komentarze do odpowiedzi Aarona McIvera, ponieważ „rozwiązanie” Aarona nie zawsze zadziała.
pepoluan

Odpowiedzi:

12

Istnieją 4 różne wersje .NET Framework.

  • .NET 1
  • .NET 1.1
  • .NET 2
  • .NET 4

Wszystkie z nich można instalować i odinstalowywać niezależnie. Tutaj zaczyna się robić ciekawie! .NET 3 został wprowadzony (wraz z dodatkiem Service Pack do .NET 2) i był dla niego dodatkowym zestawem bibliotek. .NET 3.5 podążył za tym trendem (z drugim dodatkiem Service Pack dla .NET 2 i dodatkiem Service Pack dla .NET 3) i ponownie wymagał .NET 2, ponieważ właśnie go rozszerzył.

Najnowsza wersja jest całkowicie samodzielna i nie wymaga wcześniejszych wersji. Jest w większości kompatybilny wstecz, dzięki czemu można na nim uruchomić stare aplikacje.

To, czy potrzebujesz któregoś z nich, zależy od tego, co prowadzisz. Większość dostępnych aplikacji jest w dalszym ciągu zbudowana dla .NET 2 do 3.5, więc zainstalowanie wersji 3.5 to wszystko. Polecam zainstalowanie 4 jako patrząc w przyszłość, to jest to, co Microsoft chce, aby ludzie używali.

.NET 4.5 (i 4.5.1, 4.5.2) to lokalna aktualizacja .NET 4.

Matthew Steeples
źródło
2
-1 Jeśli masz .NET 4, możesz uruchomić dowolną aplikację zbudowaną z .NET 1.1+
Aaron McIver
7
@Aaron to nie reguła
Shekhar,
7

Instalacja .Net Framework 3.5 instaluje również wszystkie poprzednie wersje od wersji 2.0 i nowszych. Wersja 1.1 jest wyjątkiem i musi zostać zainstalowana osobno.

Ponieważ wydaje się, że potrzebujesz wersji 3.5 SP1, spowoduje to również zainstalowanie wszystkich wersji .Net od wersji 2.0 i nowszych. Więc naprawdę nie masz wyboru, a próba odinstalowania jednej wersji może powodować problemy z innymi wersjami, które się na niej opierają.

Ponieważ pozostało bardzo niewiele produktów, które wymagają .Net 1.1, można poczekać z jego instalacją, aż będzie to naprawdę potrzebne. Ponieważ nie jest on instalowany automatycznie, a jeśli jest już zainstalowany, oznacza to, że jest wymagany przez jakiś zainstalowany produkt (chyba że korzystasz z XP, gdzie jest on instalowany domyślnie).

Nie wspomniałeś o .Net 4.0, ale w tej wersji Microsoft próbował zmniejszyć rozmiar oprogramowania, nie uwzględniając wszystkich poprzednich wersji. Net. 4.0 jest zatem mniejszy i powinien być kompatybilny wstecz ze wszystkimi poprzednimi wersjami od 1.1. Teoretycznie jest to jedyne, czego potrzebujesz.

harrymc
źródło
1
Mylisz się, że .NET 4 jest budowany na podstawie 2. Poniżej zamieszczam bardziej szczegółową odpowiedź. Zasadniczo wersja 4 to najnowsza samodzielna wersja.
Matthew Steeples
@Matthew Steeples: Naprawiłem moją odpowiedź, aby nie uwzględniać v4. Nie jestem pewien, czy masz rację, sugerując, że 2.0 nie jest instalowany przez zainstalowanie 3.5 SP1.
harrymc
-1 Jeśli masz .NET 4, możesz uruchomić dowolną aplikację zbudowaną z .NET 1.1+
Aaron McIver
2
@Aaron: Dlaczego głosować w dół? Nic nie mówię o v4, ponieważ nie mam z tym doświadczenia. Zobacz na to odpowiedź Matthew Steeplesa. Zbyt szybkie głosowanie w dół nie jest dobrą netykietą.
harrymc
2
@Aaron: Cytowanie z linku: „ Jednak w praktyce zgodność ta może zostać zerwana przez pozornie nieistotne zmiany w .NET Framework i zmiany w technikach programowania ”. W każdym razie ta sama fraza zgodności została znaleziona taka, jaka jest w informacjach o wydaniu wszystkich wersji .Net od wersji 2.0 i nigdy nie była całkowicie prawdziwa. To tylko szum marketingowy MS.
harrymc
6

Różne aplikacje wymagają różnych ram i myślę, że nie ma kompatybilności wstecznej, więc możesz potrzebować ich wszystkich, choć nie musisz ich pobierać od razu.
Po zainstalowaniu aplikacji wymagającej określonej wersji środowiska można je pobrać. (Najczęściej będą potrzebować 2, 3 lub 3,5)

Shekhar
źródło
-1 Jeśli masz .NET 4, możesz uruchomić dowolną aplikację zbudowaną z .NET 1.1+
Aaron McIver
3
@Aaron nie we wszystkich przypadkach
Shekhar
1
@Aaron Shark ma rację.
Camilo Martin
@CamiloMartin Produkty konsumowane przez konsumenta są wstecznie kompatybilne, MS sam to stwierdza . To nie jest jakieś ciasto na niebie, które wymyślam.
Aaron McIver
2

To nieprawda, że ​​Net4 jest wszystkim, czego potrzebujesz. Usunąłem wszystkie wersje, a następnie zainstalowałem TYLKO v4. Pierwsza aplikacja, którą próbowałem uruchomić (Powermate), powiedziała, że ​​nie może znaleźć wymaganego .NET Framework. Więc następnie zainstalowałem Net v2 SP2 i aktualizację SP2, a aplikacja działała dobrze.

Ken Roberts
źródło
1
Racja, Microsoft nie jest bardzo blisko .NET. .NET Framework 4 jest wstecznie kompatybilny z aplikacjami zbudowanymi z .NET Framework w wersjach 1.1, 2.0, 3.0 i 3.5. Innymi słowy, aplikacje i komponenty zbudowane na poprzednich wersjach .NET Framework będą działały na .NET Framework 4. To stwierdzenie to tylko wiadomość.
Aaron McIver
-3

Jeśli masz zainstalowany program .NET 4, możesz uruchomić dowolną aplikację .NET zbudowaną w dowolnej strukturze od wersji 1.1 .

.NET Framework 4 jest wstecznie kompatybilny z aplikacjami zbudowanymi z .NET Framework w wersjach 1.1, 2.0, 3.0 i 3.5. Innymi słowy, aplikacje i komponenty zbudowane na poprzednich wersjach .NET Framework będą działać na .NET Framework 4.

Aaron McIver
źródło
@Shark To stwardnienie rozsiane zakrywające ich kryjówkę ... OP powinien dobrze działać z instalacją .NET 4.
Aaron McIver
3
Wydaje mi się, że nie przeczytałeś następnego akapitu ... Jednak w praktyce tę zgodność można przełamać przez pozornie nieistotne zmiany w .NET Framework i zmiany w technikach programowania
Shekhar
1
@Shark To stwardnienie rozsiane pokrywające ich kryjówkę. Nie mogą zagwarantować, co dany programista zrobił dla zwiększenia wydajności ... szczególnie w przypadku wątków. Aby ukryć swoją kryjówkę, muszą rozpowszechniać te informacje. VS2010 + .NET 4 umożliwia atakowanie na wiele platform, tj. ... 3.5, 2.0 itd. ... Jeśli tworzę aplikację skierowaną na platformę .NET 2 z jakiegokolwiek powodu, z pewnością nie wysyłam redystrybucji .NET 2 ... Jestem wysyłka .NET 4.
Aaron McIver
4
Wiem, że ta odpowiedź jest stara, ale połączona strona wyraźnie stwierdza: Domyślnie aplikacja działa w wersji .NET Framework, dla której została zbudowana. Jeśli ta wersja nie jest obecna, a plik konfiguracyjny aplikacji nie definiuje obsługiwanych wersji, może wystąpić błąd inicjalizacji .NET Framework. W takim przypadku próba uruchomienia aplikacji nie powiedzie się.
pepoluan
2
-1. Z mojego doświadczenia wynika, że ​​tak nie jest.
andyb