Visual studio как выбрать framework



Общие сведения о настройке целевой платформы Framework targeting overview

В Visual Studio можно указать версию платформы .NET, на которую будет ориентироваться проект. In Visual Studio, you can specify the version of .NET that you want your project to target. Нацеливание на платформу помогает гарантировать, что приложение использует только те функциональные возможности, которые доступны в указанной версии платформы. Framework targeting helps guarantee that the application uses only functionality that is available in the specified framework version. Для запуска приложений .NET Framework на другом компьютере версия платформы для такого приложения должна быть совместима с версией платформы, установленной на компьютере. For .NET Framework apps to run on another computer, the framework version that the application targets must be compatible with the framework version that’s installed on the computer.

Решение Visual Studio может содержать проекты, предназначенные для различных версий .NET. A Visual Studio solution can contain projects that target different versions of .NET. Обратите внимание, что вы можете выполнить сборку только для одной версии .NET с помощью условий ссылок для одной сборки или рекурсивно создавать разные двоичные файлы для каждой версии. However, note that you can only build against a single version of .NET either using reference conditionals for a single build or recursively build different binaries for each version. Дополнительные сведения о требуемых версиях .NET Framework см. в разделе Целевые платформы. For more information about target frameworks, see Target frameworks.

Вы также можете нацеливать приложения на различные платформы. You can also target applications for different platforms. Дополнительные сведения см. в разделе Настройка для различных версий. For more information, see Multitargeting.

Функции нацеливания на платформу Framework targeting features

Среди прочего, доступны следующие возможности нацеливания на платформу: Framework targeting includes the following features:

При открытии проекта, который ориентирован на более раннюю версию платформы, Visual Studio может автоматически обновить его или оставить имеющуюся настройку. When you open a project that targets an earlier framework version, Visual Studio can automatically upgrade the project or leave the target as-is.

При создании проекта .NET Framework можно указать версию платформы .NET Framework, на которую требуется ориентироваться. When you create a .NET Framework project, you can specify the version of the .NET Framework that you want to target.

Вы можете ориентироваться на несколько платформ в одном проекте. You can target multiple frameworks in a single project.

В каждом из нескольких проектов в одном решении можно ориентироваться на разные версии .NET. You can target a different version of .NET in each of several projects in the same solution.

Можно изменить версию .NET, на которую ориентирован существующий проект. You can change the version of .NET that an existing project targets.

При изменении версии платформы .NET, на которую сориентирован проект, Visual Studio вносит все необходимые изменения в ссылки и файлы конфигурации. When you change the version of .NET that a project targets, Visual Studio makes any required changes to references and configuration files.

При работе над проектом, ориентированным на более раннюю версию платформы, Visual Studio динамически изменяет среду разработки, как показано ниже: When you work on a project that targets an earlier framework version, Visual Studio dynamically changes the development environment, as follows:

Фильтрует элементы в диалоговых окнах Добавить новый элемент, Добавить новую ссылку и Добавление ссылки на службу, чтобы пропустить варианты, которые недоступны в целевой версии. It filters items in the Add New Item dialog box, the Add New Reference dialog box, and the Add Service Reference dialog box to omit choices that are not available in the targeted version.

Фильтрует пользовательские элементы управления на панели элементов, чтобы удалить те из них, которые недоступны в целевой версии, и отобразить только наиболее актуальные элементы, если доступно несколько элементов управления. It filters custom controls in the Toolbox to remove those that are not available in the targeted version and to show the only the most up-to-date controls when multiple controls are available.

Фильтрует IntelliSense, чтобы пропустить языковые функции, которые недоступны в целевой версии. It filters IntelliSense to omit language features that aren’t available in the targeted version.

Фильтрует свойства в окне Свойства, чтобы пропустить те, которые недоступны в целевой версии. It filters properties in the Properties window to omit those that aren’t available in the targeted version.

Фильтрует пункты меню, чтобы пропустить те, которые недоступны в целевой версии. It filters menu options to omit options that aren’t available in the targeted version.

Для сборок система использует версию и параметры компилятора, которые подходят для целевой версии. For builds, it uses the version of the compiler and the compiler options that are appropriate for the targeted version.

  • Нацеливание на платформу не гарантирует правильную работу приложения. Framework targeting does not guarantee that your application will run correctly. Нужно протестировать приложение, чтобы убедиться в том, что оно работает с целевой версией. You must test your application to make sure it runs against the targeted version.
  • Ориентироваться на версии платформы, предшествующие .NET Framework 2.0, запрещено. You cannot target framework versions below .NET Framework 2.0.

Выбор целевой версии платформы Select a target framework version

При создании проекта .NET Framework выберите целевую версию .NET Framework после выбора шаблона проекта. When you create a .NET Framework project, you can select the target .NET Framework version after you select a project template. Список доступных платформ включает их установленные версии, соответствующие типу выбранного шаблона. The list of available frameworks includes the installed framework versions that are applicable to the selected template type. Для шаблонов проектов, отличных от .NET Framework, например шаблонов .NET Core, раскрывающийся список Платформа не отображается. For non-.NET Framework project templates, for example .NET Core templates, the Framework drop-down list doesn’t appear.

Изменение требуемой версии .NET Framework Change the target framework

Для существующего проекта Visual Basic, C# или F# вы можете изменить целевую версию .NET в диалоговом окне свойств проекта. In an existing Visual Basic, C#, or F# project, you change the target .NET version in the project properties dialog box. Сведения об изменении целевой версии для проектов C++ см. в статье How to: Modify the Target Framework and Platform Toolset (Практическое руководство. Изменение требуемой версии .NET Framework и набора средств платформы). For information about how to change the target version for C++ projects, see How to modify the target framework and platform toolset instead.

В обозревателе решений откройте контекстное меню проекта, для которого требуется изменить целевую платформу, и выберите пункт Свойства. In Solution Explorer, open the right-click menu for the project that you want to change, and then choose Properties.

В левом столбце окна Свойства перейдите на вкладку Приложение. In the left column of the Properties window, choose the Application tab.

После создания приложения UWP невозможно изменить целевую версию Windows или .NET. After you create a UWP app, you can’t change the targeted version of either Windows or .NET.

В списке Целевая рабочая среда выберите требуемую версию. In the Target Framework list, choose the version that you want.

В открывшемся диалоговом окне проверки нажмите кнопку Да. In the verification dialog box that appears, choose the Yes button.

Проект будет выгружен. The project unloads. При его перезагрузке он будет ориентирован на выбранную версию .NET. When it reloads, it targets the .NET version that you just chose.

Если код содержит ссылки на другую версию .NET, отличную от целевой, при компиляции и запуске кода могут появиться сообщения об ошибках. If your code contains references to a different version of the .NET than the one that you targeted, error messages may appear when you compile or run the code. Чтобы устранить эти ошибки, измените ссылки. To resolve these errors, modify the references. См. раздел Устранение неполадок, связанных с настройкой для определенных версий платформы .NET. See Troubleshoot .NET targeting errors.

В зависимости от целевой платформы ее можно представить в файле проекта следующим образом: Depending on the target framework, it can be represented in the following ways in the project file:

  • Для приложения .NET Core: netcoreapp2.1 For a .NET Core app: netcoreapp2.1
  • Для приложения .NET Standard: netstandard2.0 For a .NET Standard app: netstandard2.0
  • Для приложения .NET Framework: v4.7.2 For a .NET Framework app: v4.7.2

Разрешение системных ссылок и пользовательских ссылок на сборки Resolve system and user assembly references

Чтобы нацелиться на определенную версию .NET, нужно сначала установить подходящие ссылки на сборки. To target a .NET version, you must first install the appropriate assembly references. Вы можете скачать пакеты разработчика для разных версий .NET на странице скачиваемых материалов .NET. You can download developer packs for different versions of .NET on the .NET downloads page.

Для проектов .NET Framework диалоговое окно Добавить ссылку позволяет отключить системные сборки, не относящиеся к целевой версии платформы .NET Framework, чтобы их невозможно было добавить в проект случайно. For .NET Framework projects, the Add Reference dialog box disables system assemblies that do not pertain to the target .NET Framework version so that they cannot be inadvertently added to a project. (Системные сборки — это файлы DLL, включенные в версию платформы .NET Framework.) Ссылки, относящиеся к версии платформы, которая старше целевой версии, не будут разрешены, а зависящие от них элементы управления невозможно будет добавить. (System assemblies are .dll files that are included in a .NET Framework version.) References that belong to a framework version that’s higher than the targeted version will not resolve, and controls that depend on such a reference cannot be added. Если вы хотите активировать такую ссылку, измените целевую версию платформы .NET Framework для проекта на ту, которая содержит эту ссылку. If you want to enable such a reference, reset the .NET Framework target of the project to one that includes the reference.

Дополнительные сведения о ссылках на сборки см. в разделе Разрешение сборок во время разработки. For more information about assembly references, see Resolve assemblies at design time.

Источник статьи: http://docs.microsoft.com/ru-ru/visualstudio/ide/visual-studio-multi-targeting-overview?view=vs-2019


Adblock
detector