Не удалось загрузить файл или сборку AjaxControlToolkit после обновления до .net 4.0 - PullRequest
15 голосов
/ 15 декабря 2009

У меня есть веб-приложение, которое я пытаюсь обновить до .net 4.0.

Я взял приложение и открыл его в Visual Studio 2010 Beta 2 и выбрал путь обновления для этого приложения. Приложение использует AjaxControlToolkit. Теперь, когда обновление завершено, когда я пытаюсь получить доступ к странице, я получаю сообщение об ошибке: «Не удалось загрузить файл или сборку« AjaxControlToolkit »или одну из ее зависимостей. Доступ запрещен».

Я пробовал:

  • Перезагрузка моей машины
  • Чистый раствор
  • Удаление всех файлов во временных файлах ASP.Net
  • Расслабляющие разрешения (добавлено «Все с полным контролем») в каталоге Bin, каталоге временных файлов ASP.Net
  • Удаление и чтение ссылки на библиотеку AjaxControlToolkit

Связанные записи web.config для AjackControlToolkit:

<pages controlRenderingCompatibilityVersion="3.5" clientIDMode="AutoID">
  <controls>
    <add tagPrefix="ajaxToolkit" namespace="AjaxControlToolkit" assembly="AjaxControlToolkit"/>
  </controls>
</pages>

Есть идеи относительно того, что здесь происходит / как я могу решить эту проблему?

Ответы [ 11 ]

15 голосов
/ 30 июня 2010

У меня была похожая проблема, но я смог ее решить, предоставив полные права на папку «Временные файлы ASP.NET» для моей личности.

6 голосов
/ 22 ноября 2011

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

Просмотрите права пользователя, которого вы пытаетесь выдать.

В моей ситуации я получал ошибку только на моей машине для разработки, а не на наших серверах промежуточного уровня или развертывания. (Некоторое время я справлялся с этим, удалив узел «identity» из config в моей среде dev и просто добавив строку в post-build, чтобы это не было проблемой ни для кого, кроме меня ..

В моей среде у нас есть определенный пользователь, который при запуске запускает все наши веб-приложения. Я создал учетную запись пользователя, но явно не установил ее права доступа. Когда я добавил пользователя в качестве администратора на моем компьютере разработчика, эта проблема полностью исчезла. (Я знаю, что это не идеал, но он «работает для меня» и приносит минимальный вред, так как эта учетная запись пользователя в любом случае заблокирована на наших «реальных» серверах ...)

4 голосов
/ 13 июля 2010

Я думаю, что пост о временных файлах в C: \ Windows \ Microsoft.NET \ Framework64 \ v4.0.21006 \ Temporary ASP.NET Files [имя_проекта] был на правильном пути.

Я решил проблему, отредактировав разрешения, чтобы быть уверенным, что олицетворяющий ASP пользователь (найденный в разделе безопасности IIS как Анонимный пользователь, который приложение должно использовать при разрешении анонимного доступа) имел надлежащую безопасность для каталога. *

Решил проблему ... Отказ в доступе обычно указывает на проблему с разрешениями.

3 голосов
/ 30 августа 2011

Я получил это сообщение об ошибке (хотя другой файл DLL), когда я переустановил приложение ASP.NET на новом компьютере с Windows Server 2008 Я искал решение этой проблемы часами, пробуя абсолютно все, но безрезультатно. Пока я не отключил антивирус McAfee. Когда я это делал, все работало как шарм.

2 голосов
/ 03 ноября 2012

Вы можете попробовать это: C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\Temporary ASP.NET Files\. Просто очистите все папки и файлы из этой папки и скомпилируйте ваше приложение. Удачного кодирования!

2 голосов
/ 01 декабря 2010

Я пытался дать моему олицетворенному пользователю полные права на папку Temporary ASP.NET Files, но это не сработало. Я помню в прошлом, когда я получил эту ошибку, что она добилась цели.

Я знаю, что постер с вопросами пытался это сделать, но он работал для меня, когда я удалил / добавил AjaxToolKit в visual studio. Я предлагаю попробовать все, что он сделал в первую очередь. Надеюсь, это кому-нибудь поможет.

1 голос
/ 08 августа 2016

Проверьте свойства DLL. Если где-то говорится, что «этот файл пришел с другого компьютера», установите флажок и «применить», чтобы снять ограничения, введенные Windows.

1 голос
/ 24 июня 2015

Я столкнулся с той же проблемой. После долгих исследований я обнаружил, что я использовал олицетворение в файле конфигурации. Мне пришлось сменить ID олицетворения на другого пользователя, который был локальным для сервера, и он сразу решил проблему.

1 голос
/ 15 декабря 2009

Не на 100% уверен, почему это работает, но в соответствующем каталоге временных файлов ASP.Net (находится по адресу: C: \ Windows \ Microsoft.NET \ Framework64 \ v4.0.21006 \ Временные файлы ASP.NET [имя проекта]) вручную скопировал AjaxControlToolkit.dll.

Затем мне представили дополнительные DLL, которые отсутствовали, но после ручного копирования их в это место я также смог решить эти проблемы. Не кажется лучшим ответом, но в итоге он работал на меня.

1 голос
/ 15 декабря 2009

Странная ошибка. Что-нибудь в вашем файле web.config указывает на AjaxControlToolkit с предоставленным токеном открытого ключа или другими спецификациями сборки? Это случилось со мной, когда значение изменилось или я изменил ссылку в GAC на локальную ссылку ...

НТН.

...