Невозможно загрузить один или несколько запрошенных типов в Entity Framework - PullRequest
4 голосов
/ 04 июля 2011

Отказ от ответственности : Я видел точные вопросы, но не видел ответов, которые могли бы решить мою проблему.
Сервер : Windows Server 2008 с установленным ASP.NET 4.0 Framework (профиль клиента и расширенный).
Сценарий : Это не происходит на моем сервере разработки, это происходит только на моем рабочем сервере, и поэтому мои возможности отладки очень ограничены. Проблема: Когда я нажимаю на страницу, которая загружает данные, используя EntityDataSource, мой элма дает мне это.

System.Reflection.ReflectionTypeLoadException Невозможно загрузить один или несколько запрашиваемые типы. Получить Свойство LoaderExceptions для более информация.

Не очень полезен Stack Trace. Поэтому я использовал событие Application_Error внутри Global.asax, чтобы получить более подробную информацию об ошибке, подобной этой.

void Application_Error(object sender, EventArgs e)
{
    // Code that runs when an unhandled error occurs
    StringBuilder sb = new StringBuilder();
    Exception objErr = default(Exception);
    objErr = Server.GetLastError().GetBaseException();

    Server.ClearError();
    if (objErr is ReflectionTypeLoadException) {
        ReflectionTypeLoadException reflerror = default(ReflectionTypeLoadException);
        reflerror = (ReflectionTypeLoadException)objErr;
        foreach (var ex in reflerror.LoaderExceptions) {
            sb.AppendLine(ex.Message);
        }
    }
    sb.AppendLine("<b>Source:</b>" + Request.RawUrl);
    sb.AppendLine("<br><b>Browser:</b>" + Request.UserAgent);
    sb.AppendLine("<br><b>IP:</b>" + Request.UserHostAddress.ToString());
    sb.AppendLine("<br><b>UserID:</b>" + User.Identity.Name);
    sb.AppendLine("<hr><br><b>Error in: </b>" + Request.Url.ToString());
    sb.AppendLine("<br><b>Error Message: </b>" + objErr.Message.ToString());
    sb.AppendLine("<br><b>Stack Trace: </b><br>" + objErr.StackTrace.ToString());
    Elmah.ErrorSignal.FromCurrentContext().Raise(new Exception(sb.ToString()));

}

Теперь я получаю сообщение об ошибке как

System.Exception
Не удалось загрузить файл или сборка 'System.Web.Mvc, Версия = 3.0.0.0, Культура = нейтральная, PublicKeyToken = 31bf3856ad364e35 'или одна из его зависимостей. Система не могу найти указанный файл. Источник: / консультант / Поиск
Браузер: Mozilla / 5.0 (Windows NT 6.1; версия 5.0) Gecko / 20100101 Firefox / 5.0
IP: мой ip
Идентификатор_пользователя: user1020



Ошибка в: http://mysite.com/search
Сообщение об ошибке: Невозможно загрузить один или несколько запрошенных типы. Получить исключения LoaderException собственность для получения дополнительной информации.
Трассировка стека:
в System.Reflection.RuntimeModule.GetTypes (RuntimeModule модуль) в System.Reflection.RuntimeModule.GetTypes () в System.Reflection.Assembly.GetTypes () в System.Data.Metadata.Edm.ObjectItemConventionAssemblyLoader.LoadTypesFromAssembly () в System.Data.Metadata.Edm.ObjectItemAssemblyLoader.Load () в System.Data.Metadata.Edm.AssemblyCache.LoadAssembly (Собрание сборка, логическое значение loadReferencedAssemblies, ObjectItemLoadingSessionData loadingData) в System.Data.Metadata.Edm.AssemblyCache.LoadAssembly (Собрание сборка, логическое значение loadReferencedAssemblies, KnownAssembliesУстановите известные Assemblies, EdmItemCollection edmItemCollection, Действие 1 logLoadMessage, Object& loaderCookie, Dictionary 2 & typesInLoading, List`1 & error) в .... (трассировка продолжается)

Пожалуйста, посмотрите на первую строку.

Что System.Web.Mvc, Version=3.0.0.0 делает в сценарии ASP.NET?
Я попросил моего сервера, ребята, установить MVC3. Но это действительно не имеет никакого смысла.
Любая помощь / указатели будут высоко оценены. Я давно не был в замешательстве с asp.net: (

Почему происходит эта ошибка и что будет хорошим решением / обходным путем?

1 Ответ

3 голосов
/ 05 июля 2011

У меня были проблемы со сторонними ссылками, нуждающимися в MVC для работы, вспоминается DotNetOpenAuth.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...