У меня есть приложение .NET Core 3 Blazor (на стороне сервера), которое я недавно обновил до версии .NET Core 3.0.1 preview 6 из версии Preview 5. Когда я собираю и запускаю его локально, он работает нормально; но при попытке опубликовать его в папке файловой системы (в режиме зависимости от платформы) он выдает следующую ошибку:
C: \ Program Files \ dotnet \ sdk \ 3.0.100-preview6-012264 \ Sdks \ Microsoft.NET.Sdk.Publish \ target \ TransformTargets \ Microsoft.NET.Sdk.Publish.TransformFiles.targets (192,5): ошибка MSB4018: Неожиданный сбой задачи «TransformAppSettings». System.IO.FileNotFoundException: не удалось загрузить файл или сборку Newtonsoft.Json, Version = 10.0.0.0, Culture = нейтральный, PublicKeyToken = 30ad4fe6b2a6aeed или одну из их зависимостей. Система не может найти указанный файл. Имя файла: 'Newtonsoft.Json, Version = 10.0.0.0, Culture = нейтральный, PublicKeyToken = 30ad4fe6b2a6aeed'
в Microsoft.NET.Sdk.Publish.Tasks.AppSettingsTransform.UpdateDestinationConnectionStringEntries (String destinationAppSettingsFilePath, ITaskItem [] destinationConnectionStrings) в Microsoft.NET.Sdk.Publish.Tasks.TransformAppSettings.Transform.AppkSettings. TransformAppSettings.Execute () в Microsoft.Build.BackEnd.TaskExecutionHost.Microsoft.Build.BackEnd.ITaskExecutionHost.Execute () в Microsoft.Build.BackEnd.TaskBuilder.d__26.MoveNext ()
Возможно, стоит упомянуть, что этой ошибки не было в предварительной версии 5. Также я использую Visual Studio Enterprise 2019 (Windows).
Вещи, которые я пробовал до сих пор: (безуспешно)
- Решение для очистки / восстановления
- Переустановите пакет SDK для .NET Core 3 preview 6.
- Добавить
Newtonsoft.Json
пакет через Nuget - Поищите связанные проблемы, поднятые сообществом, на github
.csproj
файл
<Project Sdk="Microsoft.NET.Sdk.Web">
<PropertyGroup>
<OutputType>Exe</OutputType>
<TargetFramework>netcoreapp3.0</TargetFramework>
<LangVersion>7.3</LangVersion>
<AspNetCoreHostingModel>InProcess</AspNetCoreHostingModel>
</PropertyGroup>
<ItemGroup>
<PackageReference Include="AutoMapper.Extensions.Microsoft.DependencyInjection" Version="6.1.0" />
<PackageReference Include="MatBlazor" Version="1.2.0" />
<PackageReference Include="Newtonsoft.Json" Version="12.0.2" />
<PackageReference Include="SqlTableDependency" Version="8.5.3" />
<PackageReference Include="System.DirectoryServices" Version="4.5.0" />
<PackageReference Include="System.DirectoryServices.AccountManagement" Version="4.5.0" />
<PackageReference Include="Telerik.UI.for.Blazor" Version="1.1.1" />
</ItemGroup>
<ItemGroup>
<Folder Include="wwwroot\images\" />
</ItemGroup>
<ItemGroup>
<ProjectReference Include="..\{path to project file}" />
</ItemGroup>
</Project>