У меня есть .Чистая ядро веб-проекта, и по разным причинам хочу, чтобы преобразовать его в .Чистый рамках проекта.
Существует ли простой способ сделать это, или мне придется начать все заново и импортировать код из предыдущих проектов
Я загрузил ядро проекта против 2017 сообщества RC и открытия *.csproj в текстовом редакторе.
Просто удалить тег
<RuntimeFrameworkVersion>
и заменить
<TargetFramework>netcoreapp1.1</TargetFramework>
для
<TargetFrameworkVersion>v4.6.1</TargetFrameworkVersion>
А ведь в свойствах проекта установить на любой другой базы и восстановить (против перезарядка и ремонт *.файл csproj).
Это работало для меня в VS2017:
Начала .сетка основного шаблона веб-проекта.
Редактировать *.csproj файл, так это выглядит так:
<Project Sdk="Microsoft.NET.Sdk.Web">
<PropertyGroup>
<TargetFramework>net472</TargetFramework>
</PropertyGroup>
<ItemGroup>
<PackageReference Include="Microsoft.AspNetCore" Version="2.1.3" />
<PackageReference Include="Microsoft.AspNetCore.CookiePolicy" Version="2.1.2" />
<PackageReference Include="Microsoft.AspNetCore.Http.Abstractions" Version="2.1.1" />
<PackageReference Include="Microsoft.AspNetCore.HttpsPolicy" Version="2.1.1" />
<PackageReference Include="Microsoft.AspNetCore.Mvc" Version="2.1.2" />
<PackageReference Include="Microsoft.AspNetCore.Mvc.Core" Version="2.1.2" />
<PackageReference Include="Microsoft.AspNetCore.Mvc.RazorPages" Version="2.1.2" />
<PackageReference Include="Microsoft.AspNetCore.StaticFiles" Version="2.1.1" />
</ItemGroup>
</Project>
Сохранить и закрыть.
Попробуйте запустить проект.
В PackReferences это просто файлы NuGet и вы можете добавлять их через GUI, если версии отличаются от моих выше.
Ни один из ответов здесь работал для меня. В .Чистая сердечника 2 проекта.JSON-файл больше не существует. Однако, я решил эту проблему с помощью следующих шагов.
я удалил все пакеты NuGet от моего существующего проекта.
я создал отдельную .объем основного веб-приложения проекта, таргетинг .чистая 4.61. Это было получить NuGet-пакетов по умолчанию.
я отредактировал временный проект'ов .файл csproj, скопировали все узлы PackageReference внутри узел itemgroup, и вставлять их в существующие проекты .файл csproj.
редактировать узел TargetFramework (внутри свойств) от "netstandard2" на глаз "net461"и
У меня было несколько изменений пакет, чтобы выследить и устранить, а иначе я смог запустить.
Там'ы много подобных ответов здесь, но я не'т вижу, что была совсем то, что я в конечном итоге делает, поэтому я'd, как оставлю это здесь на всякий случай кто-то другой находится в той же обуви.
Просто чтобы быть ясно, мой проект был консольной программы. Так что, если вы'вновь пытается использовать этот ответ на что-то другое, ваш пробег может варьироваться.
В своем .файл csproj
, внутри <свойств></свойств и GT; тег
изменить <TargetFramework>
чтобы отражать следующее:
в <TargetFramework>net461</TargetFramework>
Итак, в этом примере я использовал В4.6.1. Я могу только предположить, что вы'МР подключите вашу версию за слово на "чистых" и, без периодов. Удачи!
Есть несколько шагов, которые вы должны сделать, чтобы достичь этого.
в
<TargetFrameworks>netstandard2.0;netcoreapp2.0;net35;</TargetFrameworks>
<RuntimeIdentifiers>win7-x86;win7-x64</RuntimeIdentifiers> <EnableDefaultCompileItems>false</EnableDefaultCompileItems>
в
Попробуйте описанные выше шаги. Это должно работать.
В моей версии Visual Studio в 2017 (15.6.2) после 'выгрузка проекта', правой кнопкой мыши и выбрав 'изменения в <Файл> У
, мне пришлось:
в <TargetFrameworkVersion>В4.5.2</TargetFrameworkVersion>
в <TargetPlatformIdentifier>УАП</TargetPlatformIdentifier>
в <TargetPlatformVersion состояние=" - а '$(TargetPlatformVersion)' == '' " и>10.0.16299.0</TargetPlatformVersion>
в <TargetPlatformMinVersion>10.0.16299.0</TargetPlatformMinVersion>
<ProjectTypeGuids>{A5A43C5B-DE2A-4C0C-9213-0A381AF9435A};{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}</ProjectTypeGuids>
Мой .чистый стандартный проект является относительно простым с несколькими пакетами NuGet. Я просто изменил
в <TargetFramework>netstandard2.0</TargetFramework>
Для
в `