При запуске приложения 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:\Windows\Microsoft.NET\Framework\v4.0.30319\clr.dll
Running under executable C:\Windows\SysWOW64\inetsrv\w3wp.exe
--- A detailed error log follows.
=== Pre-bind state information ===
LOG: User = notebook\Guilherme
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:\Users\Guilherme\Documents\Visual Studio 2012\Projects\Gedi\Gedi\bin
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:\Users\Guilherme\Documents\Visual Studio 2012\Projects\Gedi\Gedi\web.config
LOG: Using host configuration file: C:\Windows\Microsoft.NET\Framework\v4.0.30319\aspnet.config
LOG: Using machine configuration file from C:\Windows\Microsoft.NET\Framework\v4.0.30319\config\machine.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 с помощью диспетчера пакетов. Также я проверил по своим ссылкам на каждую сборку Auth, которая была в моем проекте, но ее нет.
Это мой файл packages.config
<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>
благодаря
c#
asp.net
.net
asp.net-mvc
asp.net-mvc-4
Димас Лонго
источник
источник
У меня была аналогичная проблема. Это было действительно странно, ведь накануне проект работал нормально.
Удаление папок obj и bin из папки проекта, очистка решения и его восстановление сработали.
Надеюсь, это поможет.
источник
Я видел, как это происходило при развертывании приложения MVC как
bin deploy
. Если щелкнуть проект правой кнопкой мыши и выбратьAdd deployable dependencies
VS добавит ссылки на Oauth, если вы установите флажок рядом сASP .NET Webpages with Razor syntax
.Чтобы исправить это, удалите
_bin_deployableAssemblies
папку и папку вашего приложения,bin
а затем очистите и перестройте свое приложение, и оно снова будет работать.источник
В моем случае приложение MVC4 нормально работало в отладчике VS2012, но при публикации приложения на сервере я получал ошибку «Не удалось загрузить файл или сборку DotNetOpenAuth.Core».
Установка флажка «Удалить все существующие файлы перед публикацией» на вкладке настроек окна «Опубликовать в Интернете» решила проблему.
источник
Решил проблему установкой пакета с помощью Nuget
источник
Просто выберите «Удалить дополнительные файлы в месте назначения» в настройках публикации. Это работает для меня
источник
Установив следующие два пакета, я решил эту проблему в VS2012 Professional Update 4 RC:
Откройте консоль диспетчера пакетов из меню:
Инструменты | Управление пакетами библиотеки | Консоль диспетчера пакетов
Установочный пакет DotNetOpenAuth.AspNet
Надеюсь, это поможет вам !!!
источник
Попробуйте выполнить глобальный поиск решения (ctrl + shift + f, если вы его не меняли) для значения «2780ccd10d57b246». Я предполагаю, что вы найдете его в своем web.config.
источник
для меня это работало следующим образом, используя консоль диспетчера упаковщиков, я удалил пакеты в следующей последовательности и переустановил их, это решило мою проблему ..
Сборка. Если вы не используете вышеуказанные пакеты, это должно решить проблему. Чтобы установить вышеуказанное снова, если оно вам понадобится, выполните следующие действия.
рекомендуется:
источник
Еще один вариант решения - иметь зависимость от сборки следующим образом:
<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 вашего приложения, а затем очистить и перестроить приложение, оно снова заработало.
источник
Если это кому-то поможет - мне не удалось удалить компоненты DotNetOpenAuth через Nuget, поэтому я решил эту ошибку, удалив их напрямую из списка ссылок, а затем повторно установив dotnetopenauth через nuget.
источник
Я тоже получал эту ошибку, но с проектом ASP.NET MVC 5. Я решил это, установив пакет DotNetOpenAuth.Mvc5 и вызвав AsActionResultMvc5 () вместо AsActionResult ()
источник
Мне помогло добавление в файл csproj следующего раздела:
источник
У меня здесь была такая же проблема. В моем опубликованном файле web.config не было строк:
<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.AspNet.Membership.OpenAuth
источник
Я столкнулся с этой проблемой, когда работал над обновлением всех наших библиотек. эта ссылка помогла мне решить эту проблему. https://www.devexpress.com/Support/Center/Question/Details/Q554890/the-could-not-load-file-or-assembly-dotnetopenauth-core-version-4-0-0-0-error- сообщение-это .
Я специально добавил эти перенаправления привязки в свой файл web.config.
<dependentAssembly> <assemblyIdentity name="DotNetOpenAuth.Core" publicKeyToken="2780CCD10D57B246" culture="neutral" /> <bindingRedirect oldVersion="1.0.0.0-4.1.0.0" newVersion="4.3.0.0" /> </dependentAssembly> <dependentAssembly> <assemblyIdentity name="DotNetOpenAuth.AspNet" publicKeyToken="2780CCD10D57B246" culture="neutral" /> <bindingRedirect oldVersion="1.0.0.0-4.1.0.0" newVersion="4.3.0.0" /> </dependentAssembly>
источник
Удалите все зависимости Microsoft.Web.WebPages.OAuth повсюду в ваших проектах.
источник