Не удалось загрузить тип из сборки в. Net Core 3.0 - PullRequest
1 голос
/ 30 апреля 2020

Я обновил целевую инфраструктуру моего net основного приложения (MVC web app) с v2.2 до v3.0, и он больше не запускается. Я обновил все пакеты nuget, которые есть в моем приложении, и удалил те, которые больше не были нужны. Теперь я получаю эту ошибку при попытке запустить приложение. Нет ошибок сборки.

TypeLoadException: Could not load type 'Microsoft.AspNetCore.Mvc.Internal.FileResultExecutorBase' from assembly 'Microsoft.AspNetCore.Mvc.Core, Version=3.1.3.0

В этом проекте нет ссылок на FileResultExecutorBase, и при запуске dotnet --include-transitive я не нашел никаких зависимостей от Microsoft.AspNetCore. Mvc .Internal. Я пробовал разные вещи, чтобы Startup ConfigureServices и Configure, но ошибка остается той же.

Это мои пакеты сейчас, скопированные из csproj-файла:

-EPPlus.Core Version "1.5.4"  
-Microsoft.AspNetCore.Authentication.OpenIdConnect Version "3.0.0"  
-Microsoft.AspNetCore.Identity.EntityFrameworkCore Version "3.0.0"  
-Microsoft.AspNetCore.Mvc.NewtonsoftJson Version "3.0.0"  
-Microsoft.AspNetCore.SpaServices Version "3.0.0"   
-Microsoft.Extensions.Logging.Debug Version "3.0.0"  
-Newtonsoft.Json Version "12.0.3" 
-React.AspNet Version "5.2.4"

Также из csproj-файла :

-TargetFramework: netcoreapp3.0  
-Sdk="Microsoft.NET.Sdk.Web" 

Я пытался удалить этот пакет EPPlus.Core (он устарел) и пересобрать без него, но в результате все равно была та же ошибка.

1 Ответ

1 голос
/ 04 мая 2020

Случилось так, что этот проект зависел от другого проекта (назовите его B) в том же решении. Проект B имеет целевую структуру. NET Стандарт 1.6. Проект B запускается вместе с этим проектом и использует класс «Microsoft.AspNetCore. Mvc .Internal.FileResultExecutorBase».

...