Не удалось загрузить файл или сборку ' DotNetOpenAuth.Ядро


Я получаю следующую ошибку при запуске моего asp net mvc 4 приложения:

Could not load file or assembly 'DotNetOpenAuth.Core, Version=4.0.0.0, 
Culture=neutral, PublicKeyToken=2780ccd10d57b246' or one of its dependencies. 
The system cannot find the file specified

журнал ошибки

Assembly manager loaded from:  C:WindowsMicrosoft.NETFrameworkv4.0.30319clr.dll
Running under executable  C:WindowsSysWOW64inetsrvw3wp.exe
--- A detailed error log follows. 

=== Pre-bind state information ===
LOG: User = notebookGuilherme
LOG: DisplayName = DotNetOpenAuth.Core, Version=4.0.0.0, Culture=neutral, PublicKeyToken=2780ccd10d57b246
 (Fully-specified)
LOG: Appbase = file:///C:/Users/Guilherme/Documents/Visual Studio 2012/Projects/Gedi/Gedi/
LOG: Initial PrivatePath = C:UsersGuilhermeDocumentsVisual Studio 2012ProjectsGediGedibin
Calling assembly : Microsoft.Web.WebPages.OAuth, Version=2.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35.
===
LOG: This bind starts in default load context.
LOG: Using application configuration file: C:UsersGuilhermeDocumentsVisual Studio 2012ProjectsGediGediweb.config
LOG: Using host configuration file: C:WindowsMicrosoft.NETFrameworkv4.0.30319aspnet.config
LOG: Using machine configuration file from C:WindowsMicrosoft.NETFrameworkv4.0.30319configmachine.config.
LOG: Post-policy reference: DotNetOpenAuth.Core, Version=4.0.0.0, Culture=neutral, PublicKeyToken=2780ccd10d57b246
LOG: Attempting download of new URL file:///C:/Windows/Microsoft.NET/Framework/v4.0.30319/Temporary ASP.NET Files/root/2635bb56/154c3fbb/DotNetOpenAuth.Core.DLL.
LOG: Attempting download of new URL file:///C:/Windows/Microsoft.NET/Framework/v4.0.30319/Temporary ASP.NET Files/root/2635bb56/154c3fbb/DotNetOpenAuth.Core/DotNetOpenAuth.Core.DLL.
LOG: Attempting download of new URL file:///C:/Users/Guilherme/Documents/Visual Studio 2012/Projects/Gedi/Gedi/bin/DotNetOpenAuth.Core.DLL.
LOG: Attempting download of new URL file:///C:/Users/Guilherme/Documents/Visual Studio 2012/Projects/Gedi/Gedi/bin/DotNetOpenAuth.Core/DotNetOpenAuth.Core.DLL.
LOG: Attempting download of new URL file:///C:/Windows/Microsoft.NET/Framework/v4.0.30319/Temporary ASP.NET Files/root/2635bb56/154c3fbb/DotNetOpenAuth.Core.EXE.
LOG: Attempting download of new URL file:///C:/Windows/Microsoft.NET/Framework/v4.0.30319/Temporary ASP.NET Files/root/2635bb56/154c3fbb/DotNetOpenAuth.Core/DotNetOpenAuth.Core.EXE.
LOG: Attempting download of new URL file:///C:/Users/Guilherme/Documents/Visual Studio 2012/Projects/Gedi/Gedi/bin/DotNetOpenAuth.Core.EXE.
LOG: Attempting download of new URL file:///C:/Users/Guilherme/Documents/Visual Studio 2012/Projects/Gedi/Gedi/bin/DotNetOpenAuth.Core/DotNetOpenAuth.Core.EXE.

Я уже удалил все ссылки из DotNetOpenAuth с помощью packager manager. Также я проверил свои собственные ссылки для каждой сборки Auth, которую я имел в своем проекте, и ее нет.

Это мои пакеты.конфигурации

<packages>
  <package id="AutoMapper" version="2.2.0" targetFramework="net45" />
  <package id="EntityFramework" version="5.0.0" targetFramework="net45" />
  <package id="jQuery" version="1.7.1.1" targetFramework="net45" />
  <package id="jQuery.UI.Combined" version="1.8.20.1" targetFramework="net45" />
  <package id="jQuery.Validation" version="1.9.0.1" targetFramework="net45" />
  <package id="knockoutjs" version="2.1.0" targetFramework="net45" />
  <package id="Microsoft.AspNet.Mvc" version="4.0.20710.0" targetFramework="net45" />
  <package id="Microsoft.AspNet.Razor" version="2.0.20710.0" targetFramework="net45" />
  <package id="Microsoft.AspNet.Web.Optimization" version="1.0.0" targetFramework="net45" />
  <package id="Microsoft.AspNet.WebApi" version="4.0.20710.0" targetFramework="net45" />
  <package id="Microsoft.AspNet.WebApi.Client" version="4.0.20710.0" targetFramework="net45" />
  <package id="Microsoft.AspNet.WebApi.Core" version="4.0.20710.0" targetFramework="net45" />
  <package id="Microsoft.AspNet.WebApi.WebHost" version="4.0.20710.0" targetFramework="net45" />
  <package id="Microsoft.AspNet.WebPages" version="2.0.20710.0" targetFramework="net45" />
  <package id="Microsoft.AspNet.WebPages.Data" version="2.0.20710.0" targetFramework="net45" />
  <package id="Microsoft.AspNet.WebPages.WebData" version="2.0.20710.0" targetFramework="net45" />
  <package id="Microsoft.jQuery.Unobtrusive.Ajax" version="2.0.20710.0" targetFramework="net45" />
  <package id="Microsoft.jQuery.Unobtrusive.Validation" version="2.0.20710.0" targetFramework="net45" />
  <package id="Microsoft.Net.Http" version="2.0.20710.0" targetFramework="net45" />
  <package id="Microsoft.Web.Infrastructure" version="1.0.0.0" targetFramework="net45" />
  <package id="Modernizr" version="2.5.3" targetFramework="net45" />
  <package id="Newtonsoft.Json" version="4.5.11" targetFramework="net45" />
  <package id="Repository" version="1.0.2.12" targetFramework="net45" />
  <package id="RestSharp" version="103.4" targetFramework="net45" />
  <package id="WebGrease" version="1.1.0" targetFramework="net45" />
</packages>

спасибо

18 82

18 ответов:

Если вы не хотите использовать OAuth, удалите ссылки: обе веб-страницы OAuth DLL (я думаю, что это Microsoft.Сеть.страницы.Протокол OAuth.dll1) и DotNetOpenAuth библиотеки DLL.


1: вы можете найти его имя в Calling assembly. Итак, удаляем все calling assembly of DotNetOpenAuth.Core должно работать для вас. Этот подход должен работать для других неиспользуемых отсутствующих ссылок.

У меня была аналогичная проблема. Это было действительно странно, так как проект работал нормально за день до этого.

удаление папок obj и bin из папки проекта, очистка решения и его перестройка работали.

надеюсь, что это поможет.

Я видел, как это происходит при развертывании приложения MVC как bin deploy. Когда вы щелкните правой кнопкой мыши на проекте и выберите Add deployable dependencies VS добавит ссылки на Oauth, если вы установите флажок рядом с ASP .NET Webpages with Razor syntax.

чтобы исправить это, удалите _bin_deployableAssemblies папка, и ваше приложение bin папка, а затем очистить и перестроить приложение, и он будет работать снова.

в моем случае приложение MVC4 работало нормально в отладчике VS2012, но я получал "не удалось загрузить файл или сборку" DotNetOpenAuth.Core '" ошибка при публикации приложения на сервере.

установка флажка "удалить все существующие файлы до публикации" на вкладке "Настройки" окна "опубликовать веб" решила проблему.

File System Publishing Settings

Я решил проблему, установив пакет с помощью Nuget

Install-Package Microsoft.AspNet.WebPages.OAuth

установив следующие два пакета, я решил эту проблему на VS2012 Professional Update 4 RC:

  1. Откройте консоль диспетчера пакетов из меню:

    Tools / Library Package Manage / Package Manager Console

  2. Install-Package DotNetOpenAuth.Паш

  3. Установить Пакет Microsoft.сеть САШ.WebHelpers

надеюсь, что это поможет вам!!!

просто выберите "Удалить дополнительные файлы в пункте назначения" в настройках публикации. Это работает для меня

попробуйте выполнить глобальный поиск решения (ctrl + shift+f, Если вы его не изменили) для значения '2780ccd10d57b246'. Я предполагаю, что вы найдете его в своей сети.конфиг.

еще один вариант решения-иметь зависимость от сборки следующим образом:

<dependentAssembly>
  <assemblyIdentity name="DotNetOpenAuth.AspNet"
                    publicKeyToken="2780ccd10d57b246"
                    culture="neutral" />
  <bindingRedirect oldVersion="0.0.0.0-4.3.0.0" newVersion="4.3.0.0" />
</dependentAssembly>
<dependentAssembly>
  <assemblyIdentity name="DotNetOpenAuth.Core"
                    publicKeyToken="2780ccd10d57b246"
                    culture="neutral" />
  <bindingRedirect oldVersion="0.0.0.0-4.3.0.0" newVersion="4.3.0.0" />
</dependentAssembly>

У меня нет репутации, чтобы комментировать, но я могу проверить, что у меня была эта точная проблема, и Джек дал правильное решение для меня. Я недавно нажал добавить ссылку на службу, и это сломало программу с приведенным выше сообщением об ошибке.

Удаление папки _bin_deployableAssemblies и папки bin вашего приложения, а затем очистка и перестройка приложения заставили его работать снова.

для меня это работало следующим образом, используя консоль packager manager, я удалил пакеты, следуя следующей последовательности заказов, и я снова установил ее, это решило мою проблему..

удалить

Uninstall-Package Microsoft.AspNet.WebPages.OAuth
Uninstall-Package DotNetOpenAuth.AspNet 
Uninstall-Package DotNetOpenAuth.OpenId.RelyingParty
Uninstall-Package DotNetOpenAuth.OpenId.Core 
Uninstall-Package DotNetOpenAuth.OAuth.Consumer
Uninstall-Package DotNetOpenAuth.OAuth.Core
Uninstall-Package DotNetOpenAuth.core

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

переустановить

install-Package DotNetOpenAuth.AspNet 
install-Package Microsoft.AspNet.WebPages.OAuth
install-Package DotNetOpenAuth.OpenId.RelyingParty
install-Package DotNetOpenAuth.OpenId.Core 
install-Package DotNetOpenAuth.OAuth.Consumer
install-Package DotNetOpenAuth.OAuth.Core
install-Package DotNetOpenAuth.core

рекомендуется:

  • перейдите в папку bin проекта, понятно
  • когда публиковать в IIS, удалите виртуальный каталог и снова назначьте веб-сайт IIS, так как я столкнулся с проблемой наличия наличных денег на сервере, которая создавала проблему...

Если это кому - то поможет-я не смог удалить компоненты DotNetOpenAuth через Nuget, поэтому я решил эту ошибку, удалив их из списка ссылок напрямую, а затем повторно установив dotnetopenauth через nuget.

Я тоже получал эту ошибку, но с помощью ASP.NET проект MVC 5. Я решил ее, установив пакет DotNetOpenAuth.Mvc5 и вызов AsActionResultMvc5 () вместо AsActionResult ()

для меня помогло добавление в csproj файл следующего раздела:

<PropertyGroup>
   <PostSharpHostConfigurationFile>web.config</PostSharpHostConfigurationFile>            
</PropertyGroup>

У меня была такая же проблема здесь. Моя опубликованная сеть.в конфигурации не было строк:

  <dependentAssembly>
    <assemblyIdentity name="DotNetOpenAuth.Core" publicKeyToken="2780ccd10d57b246" />
    <bindingRedirect oldVersion="1.0.0.0-4.1.0.0" newVersion="4.1.0.0" />
  </dependentAssembly>

просто добавил И все заработало.

просто удалите папку BIN из wwwroot и снова опубликуйте.

Я смог решить это с моей стороны, удалив Microsoft.сеть САШ.Членство.OpenAuth

удалите все Microsoft.Сеть.страницы.Зависимости OAuth везде в ваших проектах.