Встроенные ресурсы, доступные по ссылкам WebResource.axd, не работают в производственной среде - PullRequest
1 голос
/ 06 мая 2011

Хорошо, это поставило меня в тупик.

У меня есть несколько серверных элементов управления, определенных в проекте VB.NET .NET 4, давайте назовем его WebControls, чтобы делиться ими с другими проектами в решении. WebControls использует встроенные ресурсы (изображения), поэтому мне не нужно включать изображения в каждый проект, которые ссылаются на элементы управления. Я использую Page.ClientScript.GetWebResourceUrl для установки атрибутов изображения ImageUrl в серверных элементах управления.

Все это прекрасно работает в моем приложении X, которое использует элементы управления из WebControls на моем сервере разработки. Однако, когда я запускаю это в производство, изображения, представленные как встроенные ресурсы, не отображаются.

Мой рабочий сервер работает под управлением IIS 7.0. Я знаю, что отключение сжатия ни на что не влияет и что для файлов .axd веб-ресурса присутствуют соответствующие обработчики IIS.

Что еще более странно, так это то, что у меня есть копии этого приложения (названные по-разному, конечно) на том же производственном сервере, и на них все работает нормально, но не в X. Пул приложений использует интегрированный .NET 4 и не будет работать в классическом режиме.

Есть предложения?

1 Ответ

0 голосов
/ 08 мая 2011

понял это. Очень странно. Я перестроил свой класс WebControls и другие мои приложения в режиме отладки и перенес эти .dll на рабочий сервер, и все заработало нормально. Затем я перестроил в режиме релиза и снова отправил .dll в рабочий режим, заменив отладочные .dll, и снова все заработало нормально. Похоже, что проблема была в том, что VS 2010 неправильно очищал dll, когда я очищал и перестраивал свои приложения для выпуска.

...