Не удается найти расположение библиотеки компиляции для пакета при публикации - .Net Core 2.0 - Visual Studio 2017 15.8.5 - PullRequest
0 голосов
/ 21 сентября 2018

У меня есть проект .Net Core 2.0, который ссылается на проект, который, в свою очередь, имеет ссылку на сборку.Все работало нормально, пока я не обновил Visual Studio 2017 до версии 15.8.5.

После обновления, когда я пытался запустить проект в VS, я получил сообщение об ошибке «Не удается найти расположение библиотеки компиляции для пакета».Это было удивительно, так как я не получал его ранее, но я видел эту проблему раньше и решил ее путем взлома, необходимого для ссылок на сборки в .Net Core 2.0, в частности, заменив стандартный MetadataReferenceFeatureProvider (подробности см. https://github.com/dotnet/core-setup/issues/2981). Как только я это сделал, проект был собран и нормально работал в Visual Studio.

Однако, когда я попытался Опубликовать проекта, я снова получил ту же ошибку.Я не могу опубликовать.

Кто-нибудь знает, что я могу с этим сделать? (Проекту требуется скомпилированное представление MVC, поэтому я не могу отключить компиляцию с использованием false.)

IЯ в отчаянии и собираюсь вернуться к предыдущей версии Visual Studio (если это вообще возможно!). Это так расстраивает, что Microsoft призывает вас обновить VS, и тогда обновление ломает то, что раньше работало!

Вот трассировка стека:

Не удалось найти расположение библиотеки компиляции для пакета 'ShiftSchedulerSPA.Reference' в Microsoft.Extensions.DependencyModel.CompilationLibrary.ResolveReferencePaths (распознаватель ICompilationAssemblyResolver, список 1 assemblies) at Microsoft.Extensions.DependencyModel.CompilationLibrary.ResolveReferencePaths() at Microsoft.AspNetCore.Mvc.ApplicationParts.AssemblyPart.<>c.<GetReferencePaths>b__8_0(CompilationLibrary library) at System.Linq.Enumerable.SelectManySingleSelectorIterator 2.MoveNext () в Microsoft.AspNetCore.Mvc.Razor.Compilation.MetadataReferenceFeatureProvider.spory..Razor.Internal.DefaultRazorReferenceManager.get_CompilationReferences () в Microsoft.AspNetCore.Mvc.Razor.Internal.LazyMetadataReferenceFeature.get_References () в Microsoft.CodeAnalysis.Razor.CompilationTagHel.(RazorCodeDocument codeDocument) в Microsoft.AspNetCore.Razor.Language.RazorEnginePhaseBase.Execute (RazorCodeDocument codeDocument) в Microsoft.AspNetCore.Razor.Language.DefaultRazorEngine.Process (RazorCoreEgnateRageRageRageRageRageRageRageRageRageRageRageRageRageRageRageRageRageRageRageRageRageRageRoGateRacmentRacmentRacmentDargementcodeDocument) в Microsoft.AspNetCore.Razor.Language.RazorTemplateEngine.GenerateCode (RazorProjectItem projectItem) в Microsoft.AspNetCore.Razor.Language.RazorTemplateEngine.GenerateCode (String path) в Microsoft.AspNetCore.Mvc.Razor.ViewCompilation.Internal.PrecompileRunCommand. <> c_0_0_0_0_0_0_0_0_0_0_0_0_0_0_0_0_0_0_0_0_0_0_0_0_0_0_0_0_0_0_0_0_0_0_0_032Threading.Tasks.Parallel. <> C__DisplayClass19_0`1.b__1 (RangeWorker & currentWorker, тайм-аут Int32, логическое значение & replicationDelegateYieldedBeforeCompletion)

1 Ответ

0 голосов
/ 21 сентября 2018

Решение было найдено в упомянутой выше статье на github.Я не знаю, почему он сломался после обновления VS 2017, но исправление проблемы публикации состояло в том, чтобы отредактировать файл .csproj, чтобы изменить Microsoft.AspNetCore.All с версии 2.0.0 на 2.0.3 :

  <ItemGroup>
    <PackageReference Include="IdentityModel" Version="2.16.1" />
    <PackageReference Include="IdentityServer4" Version="2.0.6" />
    <PackageReference Include="Microsoft.AspNetCore.All" Version="2.0.3" />
    <PackageReference Include="Serilog.Extensions.Logging.File" Version="1.1.0" />
  </ItemGroup>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...