сген.ошибка сборки exe " не удалось загрузить один или несколько запрошенных типов"

Я создаю решение, которое содержит несколько решений. Все, кроме одного, строят без проблем. Проблемный выдает следующее сообщение:

Ошибка 2 не удается загрузить один или более запрошенных типов. Возвращать свойство LoaderExceptions для более информация. J:MyPluginsMyPlugin1SGEN MyPlugin1

Я включил подробный вывод в Visual Studio, и я получил следование: C:Program файлы (x86)Microsoft SDKsWindowsv8.0AbinNETFX 4.0 Toolssgen.exe / сборка:

Я проверил выход с помощью FusionLog и все загрузилось правильно. Это оказалось отвлекающим маневром. Я решил запустить сборку снова с многословием. Я получил следующее:

утилита поддержки сериализации Xml Microsoft (R) [Microsoft (R) .NET Framework, Версия 4.0.30319.17929] Авторское Право (C) Microsoft Корпорация. Все права защищены. Если вы хотите больше помощь, пожалуйста, введите "сгэн /?". SGEN: ошибка: невозможно загрузить один или несколько тип запроса. Получения свойства LoaderExceptions для получения дополнительной информация. Команда вышла с кодом 1. Выполнено выполнение задачи "SGen" - не удалось.

C:Program файлы (x86)Microsoft SDKsWindowsv8.0AbinNETFX 4.0 Инструментысгэн.exe / assembly:":MyPluginsMyPlugin1.библиотека DLL" /proxytypes /справка:"J:MyPluginsMyPlugin1packagesFluentValidation.3.4.6.0libNet40FluentValidation.файл DLL" ссылка:"C:Program файлы (x86)справочник СборкиMicrosoftFramework.NETFrameworkv4.0mscorlib.файл DLL" /справка:"J:MyPluginsMyPlugin1LibrariesCorebinReleaseCore.файл DLL" /справка:"J:MyPluginsMyPlugin1LibrariesServicesbinReleaseServices.файл DLL" /справка:"J:MyPluginsMyPlugin1PresentationWeb.FrameworkbinReleaseWeb.Рамки.файл DLL" ссылка:"C:Program файлы (x86)справочник СборкиMicrosoftFramework.NETFrameworkv4.0система.Ядро.файл DLL" ссылка:"C:Program файлы (x86)справочник СборкиMicrosoftFramework.NETFrameworkv4.0система.Данные.файл DLL" ссылка:"C:Program файлы (x86)справочник СборкиMicrosoftFramework.NETFrameworkv4.0система.файл DLL" ссылка:"C:Program файлы (x86)справочник СборкиMicrosoftFramework.NETFrameworkv4.0система.EnterpriseServices.файл DLL" ссылка:"C:Program файлы (x86)справочник СборкиMicrosoftFramework.NETFrameworkv4.0система.Сеть.файл DLL" /справка:"C:Program файлы (x86)Microsoft ASP.NETASP.NET MVC 4СистемаСборки.Сеть.В MVC.dll " / ссылка:"C:Program файлы (для x86)ссылка СборкиMicrosoftFramework.NETFrameworkv4.0система.Сеть.Сервисы.файл DLL" ссылка:"C:Program файлы (x86)справочник СборкиMicrosoftFramework.NETFrameworkv4.0система.XML.DLL-файл"

что вызывает эту ошибку и как ее исправить, не выключая SGEN? К твоему сведению, я не писал код.

3 ответов


отличный совет, который работал для меня, взятый отсюда:http://hashtagfail.com/post/5255977780/sgen-loaderexceptions-error

причина, по которой это происходит, заключается в том, что в сборках выпуска Visual Studio попытка создать сборку сериализации, содержащую типы в ваше решение, чтобы улучшить производительность сериализации XmlSerializer не , если вы решите сериализовать свои типы. это может быть отключен переход на вкладку сборка проекта свойства и настройка " создать сборка сериализации "to"Off".


У меня была та же проблема и это была плохая ссылка в проекте. После удаления DLL из GAC он работал нормально. Вы можете найти DLL проблемы с журналом Fusion. Подробнее здесь


решение простое, но трудно найти. Вы должны удалить asp.net предварительно скомпилированная папка. Поскольку Плагины динамически ссылаются, .NET не может обновлять DLL, как и другие компоненты.