Подтвердить что ты не робот

Точка входа не была найдена исключение

Я установил vs2012 (11.0.50727.1),
Я открыл новое решение MVC4 with .NET 4.5,
я создаю простой HomeController, и поскольку я хотел запустить его локально, я получил эту очень странную ошибку:
Как это можно решить? Какова эта ошибка и почему это происходит?

Заранее благодарю вас за любую вашу помощь.

    Server Error in '/' Application.
Entry point was not found.
Description: An unhandled exception occurred during the execution of the current web request. Please review the stack trace for more information about the error and where it originated in the code.

Exception Details: System.EntryPointNotFoundException: Entry point was not found.

Source Error:

An unhandled exception was generated during the execution of the current web request. Information regarding the origin and location of the exception can be identified using the exception stack trace below.

Stack Trace:


[EntryPointNotFoundException: Entry point was not found.]
   System.Web.Mvc.IDependencyResolver.GetService(Type serviceType) +0
   System.Web.Mvc.DependencyResolverExtensions.GetService(IDependencyResolver resolver) +56
   System.Web.Mvc.SingleServiceResolver`1.GetValueFromResolver() +44
   System.Lazy`1.CreateValue() +180
   System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw() +22
   System.Lazy`1.get_Value() +10749357
   System.Web.Mvc.SingleServiceResolver`1.get_Current() +15
   System.Web.Mvc.MvcRouteHandler.GetSessionStateBehavior(RequestContext requestContext) +121
   System.Web.Mvc.MvcRouteHandler.GetHttpHandler(RequestContext requestContext) +33
   System.Web.Mvc.MvcRouteHandler.System.Web.Routing.IRouteHandler.GetHttpHandler(RequestContext requestContext) +10
   System.Web.Routing.UrlRoutingModule.PostResolveRequestCache(HttpContextBase context) +9709656
   System.Web.Routing.UrlRoutingModule.OnApplicationPostResolveRequestCache(Object sender, EventArgs e) +82
   System.Web.SyncEventExecutionStep.System.Web.HttpApplication.IExecutionStep.Execute() +136
   System.Web.HttpApplication.ExecuteStep(IExecutionStep step, Boolean& completedSynchronously) +69


Version Information: Microsoft .NET Framework Version:4.0.30319; ASP.NET Version:4.0.30319.17929 
4b9b3361

Ответ 1

Такая же ошибка появляется при переключении проекта с MVC3 на MVC4 и забудьте изменить System.Web.WebPages.Razor, Version=1.0.0.0 на System.Web.WebPages.Razor, Version=2.0.0.0 в файле web.config.

Ответ 2

Я преобразовал проект из MVC3+.NET4 в MVC4+.NET4.5, и я получаю исключение Entry point was not found при вызове действия контроллера.

Мое решение состояло в том, чтобы вставить перенаправление привязки сборки внутри web.config, чтобы указать на сборки MVC 4:

  <runtime>
    <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
      <dependentAssembly>
        <assemblyIdentity name="System.Web.Helpers" publicKeyToken="31bf3856ad364e35" />
        <bindingRedirect oldVersion="1.0.0.0-2.0.0.0" newVersion="2.0.0.0" />
      </dependentAssembly>
      <dependentAssembly>
        <assemblyIdentity name="System.Web.Mvc" publicKeyToken="31bf3856ad364e35" />
        <bindingRedirect oldVersion="1.0.0.0-4.0.0.0" newVersion="4.0.0.0" />
      </dependentAssembly>
      <dependentAssembly>
        <assemblyIdentity name="System.Web.WebPages" publicKeyToken="31bf3856ad364e35" />
        <bindingRedirect oldVersion="1.0.0.0-2.0.0.0" newVersion="2.0.0.0" />
      </dependentAssembly>
    </assemblyBinding>
  </runtime>

Я не знаю точной причины проблемы, может быть, какая-то сторонняя библиотека, которая все еще ссылается на MVC3.

Ответ 3

Старый пост, но если вы столкнулись с ним до ошибок mvc (обновление System.Mvc.dll, например, x.0.0.1), вы можете проверить тег bindingRedirect (4.0.0.0 → 4.0.0.1)

<dependentAssembly>
    <assemblyIdentity name="System.Web.Mvc" publicKeyToken="31bf3856ad364e35" />
    <bindingRedirect oldVersion="1.0.0.0-4.0.0.0" newVersion="4.0.0.1" />
  </dependentAssembly> 

Ответ 4

Если вы поймаете эту ошибку в WebAPI Controller - вам понадобится привязка привязки версия System.Web.Http

<dependentAssembly>
    <assemblyIdentity name="System.Web.Http" publicKeyToken="31bf3856ad364e35" culture="neutral" />
    <bindingRedirect oldVersion="0.0.0.0-5.2.3.0" newVersion="5.2.3.0" />
</dependentAssembly>

Ответ 5

вы также должны проверить, что все проекты в ваших решениях ссылаются на последние версии DLL, и что не существует непоследовательных версий, используемых различными подпроектами.

несмотря на запуск nuget-удаления, установку и обновление, я обнаружил, что проект тестов ссылался на старую версию system.net.http

Ответ 6

Если вы используете .net 4.5 и добавляете связывание в коллекцию ModelBinders.Binders из библиотеки .net 4.0, вы также получите такую ​​ошибку.

Ответ 7

У вас есть что-то подобное в вашем файле Global.asax.cs?

private static void InitializeDependencyInjectionContainer(HttpConfiguration config)
{
    container = new UnityContainer();


    container.RegisterType<Site.Web.Data.IDatabaseFactory, Site.Web.Data.DatabaseFactory>();
    container.RegisterType<Site.Web.Data.Interfaces.IUnitOfWork, Site.Web.Data.UnitOfWork>();
    container.RegisterType<Site.Web.Data.Interfaces.IUserRepository, Site.Web.Data.Repositories.UserRepository>();
    container.RegisterType<Site.Web.Data.Interfaces.ISiteRepository, Site.Web.Data.Repositories.SiteRepository>();

Из трассировки стека, которую вы отправили System.Web.Mvc.IDependencyResolver.GetService(Type serviceType) +0, предложит, чтобы одна (или более) из ваших зависимостей не разрешалась.

Вы можете попробовать комментировать один или несколько из них и попытаться сузить, какой из них не удается решить.

Ответ 8

Старый пост, но просто добавить для любого, кто ищет

Кажется, что вся ошибка. Я получил его, когда мой web.config использовал внешний раздел, и этот раздел был исключен из проекта Visual Studio, то есть с помощью этого

<sessionState configSource="SystemWeb.config" />

Ответ 9

Попробуйте это.. в визуальной студии перейдите в консоль администрирования пакета и введите:

update-package

Ответ 10

Я столкнулся с этой проблемой и решил ее с помощью 1. uninstall-Package Microsoft.AspNet.Mvc(мне нужно удалить что-то еще, прежде чем я смогу удалить AspNet.MVC успешно)
2. Install-Package. Microsoft.AspNet.Mvc -Version 4.0.20710
3. Перестроить и развернуть

Ответ 11

Не мой MVC конкретный в моем случае, но только что начал получать эту ошибку:

Ошибка сервера в приложении "/".

Точка входа не найдена.

Описание: Необработанное исключение возникло во время выполнения текущего веб-запроса. Просмотрите трассировку стека для получения дополнительной информации об ошибке и ее возникновении в коде.

Сведения об исключении: System.EntryPointNotFoundException: точка входа не найдена.

Ошибка источника:

Необработанное исключение было создано во время выполнения текущего веб-запроса. Информация о происхождении и местоположении исключения может быть идентифицирована с использованием следа стека исключений ниже.

Трассировка стека:

[EntryPointNotFoundException: точка входа не найдена.]

...

System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint) +8008

Информация о версии: Microsoft.NET Framework Версия: 4.0.30319; Версия ASP.NET: 4.6.1055.0

Что вызвало то, что я опубликовал в папке веб-сервера из Visual Studio и был выбран в Precompile приложение (с использованием проекта .NET 4.5), с возможностью предварительного компиляции сайта с возможностью обновления btw.

Вероятно, моя проблема заключалась в том, что сайт работает на .NET 4.0 в IIS, тогда как прекомпилированная версия, размещенная в папке bin во время действия публикации, была равна 4.5. Когда я удалял папку "bin" с веб-сайта, он снова запускался нормально.

Ответ 12

Просто обновите "System.Web.Mvc" с помощью "nuget"