Недавно я обновился с .Net 7 до .Net 8. Мое приложение работает нормально локально, но при развертывании в Azure я получаю два предупреждения в консоли браузера:
MONO_WASM: версия dotnet.runtime.js отличается от версия dotnet.js в файле dotnet.runtime.8.0.7
и
MONO_WASM: версия dotnet.native.js отличается от версии версия dotnet.js в файле dotnet.runtime.8.0.7
и ошибка:
Не удалось найти действительный дайджест в атрибуте целостности ресурса. _framework/dotnet.native.wasm с вычисленной целостностью SHA-256. ресурс заблокирован.
Я попытался очистить все кеши, очистить и пересобрать приложение, вручную удалить все папки obj и bin (в файлах проекта Client, Server и Shared). Мое приложение должно быть ориентировано на 8.0.2. В корень решения я добавил файл global.json, который имеет:
{
"sdk": {
"version": "8.0.201"
}
}
Я не уверен, почему он генерирует dotnet.runtime.8.0.7 и является ли это вообще причиной предупреждений и ошибок. Может ли кто-нибудь дать рекомендации о том, как решить эту проблему?
@jason - Пожалуйста, поделитесь своим .csproj
файлом.
@jason Попробуйте использовать последнюю версию SDK 8.0.303, которая соответствует версии среды выполнения 8.0.7.
Я создал приложение .NET 7 Blazor WASM и обновил его до .NET 8.
Не удалось найти действительный дайджест в атрибуте целостности для ресурса _framework/dotnet.native.wasm с вычисленной целостностью SHA-256. ресурс заблокирован.
Чтобы устранить вышеуказанную ошибку, очистите все хранилище кэша NuGet, выполнив следующие действия.
Перейдите в Инструменты -> Диспетчер пакетов NuGet -> Управление NuGet для решения -> символ настройки -> Диспетчер пакетов NuGet -> Общие -> Очистить все хранилище NuGet -> Хорошо.
Ниже мой файл .csproj.
<Project Sdk = "Microsoft.NET.Sdk.BlazorWebAssembly">
<PropertyGroup>
<TargetFramework>net8.0</TargetFramework>
<Nullable>enable</Nullable>
<ImplicitUsings>enable</ImplicitUsings>
</PropertyGroup>
<ItemGroup>
<PackageReference Include = "Microsoft.AspNetCore.Components.WebAssembly" Version = "8.0.2" />
<PackageReference Include = "Microsoft.AspNetCore.Components.WebAssembly.DevServer" Version = "8.0.2" PrivateAssets = "all" />
</ItemGroup>
</Project>
Перед развертыванием приложения в службе приложений Azure удалите _framework из kudu.
GoTo kudu -> Консоль отладки -> CMD -> сайт -> wwwroot -> wwwroot ->_framework.
Вывод службы приложений Azure:
Вы обновили пакеты после обновления до .net 8?