Я использую Visual Studio 2019 Preview 2.1.У меня есть проект C # библиотеки классов .NET Framework 4.6.1, в котором есть некоторые ссылки Azure в старом формате проекта csproj (ToolsVersion = "15.0").Этот старый csproj в настоящее время собирается и работает просто отлично.Я пытаюсь перейти на новый формат проекта.Все идет хорошо, за исключением того факта, что у меня есть одна ссылка, которая не исходит от NuGet - она исходит от GAC: Microsoft.WindowsAzure.ServiceRuntime.Однако я не понял, как получить новый формат проекта, чтобы найти сборку.Например, вот новый файл проекта:
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<TreatWarningsAsErrors>true</TreatWarningsAsErrors>
<TargetFramework>net461</TargetFramework>
</PropertyGroup>
<ItemGroup>
<None Include="app.config" />
</ItemGroup>
<ItemGroup>
<PackageReference Include="Microsoft.Azure.KeyVault" Version="2.3.2" />
<PackageReference Include="Microsoft.Azure.KeyVault.Core" Version="1.0.0" />
<PackageReference Include="Microsoft.Azure.KeyVault.WebKey" Version="2.0.7" />
<PackageReference Include="Microsoft.IdentityModel.Clients.ActiveDirectory" Version="3.19.1" />
<PackageReference Include="Microsoft.Rest.ClientRuntime" Version="2.3.8" />
<PackageReference Include="Microsoft.Rest.ClientRuntime.Azure" Version="3.3.7" />
<PackageReference Include="Microsoft.WindowsAzure.ConfigurationManager" Version="3.2.3" />
<PackageReference Include="Newtonsoft.Json" Version="10.0.2" />
<PackageReference Include="WindowsAzure.Storage" Version="9.0.0" />
</ItemGroup>
<ItemGroup>
<Reference Include="Microsoft.WindowsAzure.ServiceRuntime, Version=2.7.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL" />
<Reference Include="System" />
<Reference Include="System.Core" />
<Reference Include="System.Runtime.Caching" />
<Reference Include="System.Xml.Linq" />
<Reference Include="System.Data.DataSetExtensions" />
<Reference Include="Microsoft.CSharp" />
<Reference Include="System.Data" />
<Reference Include="System.Net.Http" />
<Reference Include="System.Xml" />
</ItemGroup>
</Project>
Фактически эта ссылка Microsoft.WindowsAzure.ServiceRuntime является точной строкой из старого формата.При загрузке этого в VS он выдает следующее предупреждение:
Предупреждение MSB3245 Не удалось разрешить эту ссылку.Не удалось найти сборку "Microsoft.WindowsAzure.ServiceRuntime, версия = 2.7.0.0, культура = нейтральная, PublicKeyToken = 31bf3856ad364e35, processorArchitecture = MSIL".Убедитесь, что сборка существует на диске.Если эта ссылка требуется вашим кодом, вы можете получить ошибки компиляции.MyProject C: \ Program Files (x86) \ Microsoft Visual Studio \ 2019 \ Preview \ MSBuild \ Current \ Bin \ Microsoft.Common.CurrentVersion.targets 2114
Я попытался удалить версию:
<Reference Include="Microsoft.WindowsAzure.ServiceRuntime" />
Но это не помогло.Если я удаляю его и пытаюсь добавить ссылку из пользовательского интерфейса VS, я вижу, что есть несколько вариантов Microsoft. * И System. * В 'Framework' (GAC), но Microsoft.WindowsAzure.ServiceRuntime не является одним изих.Просто чтобы подтвердить, что я запустил ILSpy и выбрал «Открыть из GAC ...» и, конечно же, он есть вместе с кучей других сборок, которые не отображаются в пользовательском интерфейсе VS.
Как я могу получитьVS чтобы загрузить эту ссылку из GAC?
Спасибо