В Rails-Core есть тема об этом - http://groups.google.com/group/rubyonrails-core/browse_thread/thread/88519ef5a53088a1/c01ba447c6dc0de7?lnk=raot
Цитировать Иегуду Каца
«Есть вещи, которые код C требует в 1.9, которые замедляют работу. Одним из таких примеров является повторная проверка $ LOAD_PATH, чтобы убедиться, что все это расширяется при каждом требовании. Это то, что должно быть решено с помощью ruby-core. Я открою тикет на Redmine, если его еще нет. "
Я также испытываю эту проблему, и проблема $ LOAD_PATH кажется потенциальной причина. Будем надеяться, что это скоро исправят.
Если он имеет тот же номер версии, что и указанная DLL, используется GAC.
Если вы увеличиваете номер версии, перестройте веб-сайт, ссылаясь на новый номер версии, поместите новую версию в каталог / bin, тогда будет использоваться эта DLL.
Если вы не хотите изменять номер версии, тебе в значительной степени не повезло.
Когда .NET загружает сборки со строгими именами, сначала он пытается решить, какой номер версии использовать. Сначала он делает это через ссылку, затем он ищет политик издателя , затем ищет перенаправления привязки в файле конфигурации.
После этого он ищет сборку в GAC, затем в любой указанной кодовой базе , а затем исследует различные папки файловой системы на предмет наличия DLL. Если на любом из этих шагов он находит правильную сборку версии, он останавливается.
Если вы не изменяете номер версии своей сборки со строгим именем, .NET найдет исходную версию в GAC и перестанет искать. Обратите внимание: поскольку он останавливается, когда находит его, и поскольку сначала выполняется поиск в GAC, указание базы кода для вашей сборки не принесет пользы, если вы также не укажете новый номер версии.
После этого он ищет сборку в GAC, затем в любой указанной кодовой базе , а затем исследует различные папки файловой системы на предмет наличия DLL. Если на любом из этих шагов он находит правильную сборку версии, он останавливается.
Если вы не изменяете номер версии своей сборки со строгим именем, .NET найдет исходную версию в GAC и перестанет искать. Обратите внимание: поскольку он останавливается, когда находит его, и поскольку сначала выполняется поиск в GAC, указание базы кода для вашей сборки не принесет пользы, если вы также не укажете новый номер версии.
После этого он ищет сборку в GAC, затем в любой указанной кодовой базе , а затем исследует различные папки файловой системы на предмет наличия DLL. Если на любом из этих шагов он находит правильную сборку версии, он останавливается.
Если вы не изменяете номер версии своей сборки со строгим именем, .NET найдет исходную версию в GAC и перестанет искать. Обратите внимание: поскольку он останавливается, когда находит его, и поскольку сначала выполняется поиск в GAC, указание базы кода для вашей сборки не принесет пользы, если вы также не укажете новый номер версии.
Если вы не изменяете номер версии сборки со строгим именем, .NET найдет исходную версию в GAC и перестанет искать. Обратите внимание: поскольку он останавливается, когда находит его, и поскольку сначала выполняется поиск в GAC, указание базы кода для вашей сборки не принесет пользы, если вы также не укажете новый номер версии.
Если вы не изменяете номер версии сборки со строгим именем, .NET найдет исходную версию в GAC и перестанет искать. Обратите внимание: поскольку он останавливается, когда находит его, и поскольку сначала выполняется поиск в GAC, указание базы кода для вашей сборки не принесет пользы, если вы также не укажете новый номер версии.
Я думаю, что могу сказать то же самое, что и Адам Силлс, но переформулировал его для моего понимания. По результатам моего собственного тестирования, похоже, что происходит следующее:
Надеюсь, это правильно ...
Вы можете просмотреть информацию о привязке в файле журнала с помощью программы просмотра журнала привязки сборок (Fuslogvw.exe), которая входит в комплект средств разработки программного обеспечения (SDK) для Windows.
s