Omówienie określania elementów docelowych platform

W programie Visual Studio możesz określić wersję platformy .NET, dla której ma być przeznaczony projekt. Określanie platformy pomaga zagwarantować, że aplikacja używa tylko funkcji dostępnych w określonej wersji platformy. Aby aplikacje .NET Framework działały na innym komputerze, wersja platformy przeznaczona dla aplikacji musi być zgodna z wersją platformy zainstalowaną na komputerze.

Rozwiązanie programu Visual Studio może zawierać projekty przeznaczone dla różnych wersji platformy .NET. Należy jednak pamiętać, że można utworzyć tylko jedną wersję platformy .NET przy użyciu warunkowych odwołań dla pojedynczej kompilacji lub rekursywnie kompilować różne pliki binarne dla każdej wersji. Aby uzyskać więcej informacji na temat platform docelowych, zobacz Platformy docelowe.

Napiwek

Można również kierować aplikacje dla różnych platform. Aby uzyskać więcej informacji, zobacz Multitargeting (Multitargeting).

Funkcje określania elementów docelowych platformy

Określanie elementów docelowych platform obejmuje następujące funkcje:

  • Po otwarciu projektu, który jest przeznaczony dla starszej wersji platformy, program Visual Studio może automatycznie uaktualnić projekt lub pozostawić element docelowy zgodnie z rzeczywistym działaniem.

  • Podczas tworzenia projektu programu .NET Framework można określić wersję programu .NET Framework, którą chcesz kierować.

  • Można kierować wiele struktur w jednym projekcie.

  • W każdym z kilku projektów w tym samym rozwiązaniu można wybrać inną wersję platformy .NET.

  • Możesz zmienić wersję platformy .NET, która jest przeznaczona dla istniejącego projektu.

    Po zmianie wersji platformy .NET przeznaczonej dla projektu program Visual Studio wprowadza wszelkie wymagane zmiany w odwołaniach i plikach konfiguracji.

Podczas pracy nad projektem, który jest przeznaczony dla starszej wersji platformy, program Visual Studio dynamicznie zmienia środowisko programistyczne w następujący sposób:

  • Filtruje elementy w oknie dialogowym Dodawanie nowego elementu, okno dialogowe Dodawanie nowego odwołania i okno dialogowe Dodawanie odwołania do usługi, aby pominąć opcje, które nie są dostępne w wersji docelowej.

  • Filtruje niestandardowe kontrolki w przyborniku, aby usunąć te, które nie są dostępne w wersji docelowej i wyświetlać tylko najbardziej aktualne kontrolki, gdy dostępnych jest wiele kontrolek.

  • Filtruje funkcję IntelliSense , aby pominąć funkcje językowe, które nie są dostępne w wersji docelowej.

  • Filtruje właściwości w oknie Właściwości , aby pominąć te, które nie są dostępne w wersji docelowej.

  • Filtruje opcje menu, aby pominąć opcje, które nie są dostępne w wersji docelowej.

  • W przypadku kompilacji używa wersji kompilatora i opcji kompilatora, które są odpowiednie dla wersji docelowej.

Uwaga

  • Określanie platformy docelowej nie gwarantuje, że aplikacja będzie działać poprawnie. Musisz przetestować aplikację, aby upewnić się, że działa ona w wersji docelowej.
  • Nie można kierować wersji platformy poniżej programu .NET Framework 2.0.

Zmienianie platformy docelowej

W istniejącym projekcie Visual Basic, C# lub F# zmieniasz docelową wersję platformy .NET w oknie dialogowym właściwości projektu. Aby uzyskać informacje na temat zmiany wersji docelowej dla projektów języka C++, zobacz Jak zmodyfikować zamiast tego platformę docelową i zestaw narzędzi platformy.

  1. W Eksplorator rozwiązań otwórz menu kontekstowe prawym przyciskiem myszy dla projektu, który chcesz zmienić, a następnie wybierz polecenie Właściwości.

  2. W lewej kolumnie okna Właściwości wybierz kartę Aplikacja .

    Project properties Application tab

    Uwaga

    Po utworzeniu aplikacji platformy UWP nie można zmienić docelowej wersji systemu Windows lub platformy .NET.

  3. Na liście Platforma docelowa wybierz odpowiednią wersję.

  4. W wyświetlonym oknie dialogowym weryfikacji wybierz przycisk Tak .

    Projekt zostaje wyładowany Podczas ponownego ładowania jest ona przeznaczona dla wybranej wersji platformy .NET.

  1. W Eksplorator rozwiązań otwórz menu kontekstowe prawym przyciskiem myszy dla projektu, który chcesz zmienić, a następnie wybierz polecenie Właściwości.

  2. W lewej kolumnie okna Właściwości wybierz kartę Aplikacja .

    Uwaga

    Po utworzeniu aplikacji platformy UWP nie można zmienić docelowej wersji systemu Windows lub platformy .NET.

  3. Na liście Platforma docelowa wybierz odpowiednią wersję.

    W przypadku projektu .NET Framework wyświetlone okno dialogowe może wyglądać podobnie do poniższego zrzutu ekranu:

    Screenshot of the Project Properties dialog with .NET Framework options highlighted.

    W przypadku projektu platformy .NET okno dialogowe może wyglądać podobnie do poniższego zrzutu ekranu:

    Screenshot of the General tab in the Project Properties dialog box, with the 'Target framework' selections showing.

  4. Jeśli zostanie wyświetlone okno dialogowe weryfikacji, wybierz przycisk Tak .

    Projekt zostaje wyładowany Podczas ponownego ładowania jest ona przeznaczona dla wybranej wersji platformy .NET.

Uwaga

Jeśli kod zawiera odwołania do innej wersji platformy .NET niż docelowa, komunikaty o błędach mogą pojawić się podczas kompilowania lub uruchamiania kodu. Aby rozwiązać te błędy, zmodyfikuj odwołania. Zobacz Rozwiązywanie problemów z błędami określania wartości docelowych platformy .NET.

Napiwek

W zależności od platformy docelowej można ją przedstawić na następujące sposoby w pliku projektu:

  • W przypadku aplikacji .NET Core: <TargetFramework>netcoreapp2.1</TargetFramework>
  • W przypadku aplikacji .NET Standard: <TargetFramework>netstandard2.0</TargetFramework>
  • W przypadku aplikacji .NET Framework: <TargetFrameworkVersion>v4.7.2</TargetFrameworkVersion>

Wybieranie wersji platformy docelowej

Podczas tworzenia projektu programu .NET Framework możesz wybrać docelową wersję programu .NET Framework po wybraniu szablonu projektu. Lista dostępnych struktur zawiera zainstalowane wersje platform, które mają zastosowanie do wybranego typu szablonu. W przypadku szablonów projektów platformy non-.NET Framework, na przykład szablonów platformy .NET Core, lista rozwijana platformy Framework nie jest wyświetlana.

Screenshot of Framework dropdown in Visual Studio 2019.

Jeśli zdecydujesz się utworzyć projekt programu .NET Framework, zobaczysz interfejs podobny do poniższego zrzutu ekranu:

Screenshot of the Framework drop-down list in Visual Studio 2022.

Jeśli zdecydujesz się utworzyć projekt platformy .NET, zobaczysz interfejs użytkownika podobny do poniższych dwóch zrzutów ekranu.

Pierwszym wyświetlonym ekranem jest okno dialogowe Konfigurowanie nowego projektu .

Screenshot of the 'Configure your new project' dialog box in Visual Studio 2022.

Drugi ekran, który zostanie wyświetlony, to okno dialogowe Opcje dodatkowe .

Screenshot of the 'Additional options' dialog box in Visual Studio 2022.

Rozwiązywanie problemów z odwołaniami do zestawu systemu i użytkownika

Aby zastosować wersję platformy .NET, należy najpierw zainstalować odpowiednie odwołania do zestawów. Pakiety deweloperskie dla różnych wersji platformy .NET można pobrać na stronie pobierania platformy .NET.

W przypadku projektów .NET Framework okno dialogowe Dodawanie odwołania wyłącza zestawy systemowe, które nie odnoszą się do docelowej wersji programu .NET Framework, aby nie można było przypadkowo dodać ich do projektu. (Zestawy systemowe to pliki DLL , które są zawarte w wersji programu .NET Framework). Odwołania należące do wersji struktury, która jest wyższa niż wersja docelowa, nie zostaną rozwiązane, a nie można dodać kontrolek, które zależą od takiego odwołania. Jeśli chcesz włączyć takie odwołanie, zresetuj element docelowy programu .NET Framework projektu na taki, który zawiera odwołanie.

Aby uzyskać więcej informacji na temat odwołań do zestawów, zobacz Rozwiązywanie zestawów w czasie projektowania.

Włączanie LINQ

W przypadku kierowania programu .NET Framework 3.5 lub nowszego zostanie automatycznie dodane odwołanie do programu System.Core i importowanie System.Linq na poziomie projektu (tylko w języku Visual Basic). Jeśli chcesz używać funkcji LINQ, musisz również włączyć Option Infer (tylko w języku Visual Basic). Odwołanie i importowanie są usuwane automatycznie, jeśli zmienisz element docelowy na starszą wersję programu .NET Framework. Aby uzyskać więcej informacji, zobacz Praca z LINQ.

Zobacz też