Вебресурс.axd?- 500 - внутренняя ошибка сервера
-
05-07-2019 - |
Вопрос
Я пытаюсь использовать элемент управления загрузкой файлов из библиотеки управления, мне он очень нравится, и я думаю, что он довольно удобен без какой-либо вспышки!..
Я скачал весь установщик, поигрался с настройками в примерах и сделал так, как мне хотелось.
я создал совершенно новое веб-приложение ins2008 и включил в него web.config, dll и папки с кодом стиля, а также страницу aspx, которую я настроил, чтобы получить желаемый результат.
Я создал новый проект и запустил его, элемент управления загрузился и работает нормально.
теперь я хочу использовать это в уже существующем проекте, над которым я работаю, поэтому я скопировал значения web.config, библиотеки DLL и папки с кодом стиля и страницу aspx, которую я настроил.
я поместил их в те же места, что и в другом проекте, построил его и запустил страницу..все загрузилось, однако, когда я нажал кнопку, я получил ошибку webresource.axd, на самом деле 2, обе с шифрованием в конце.
после некоторых исследований выяснилось, что webresource.axd можно использовать для динамической загрузки файлов javasript, css и т. д.Итак, я предполагаю, что на данный момент элемент управления использует это как скрытый способ включения необходимых файлов JavaScript..и его неудача в том числе..что меня сбивает с толку.
Я удалил все из своего проекта, но он все еще терпит неудачу. Я нашел статью, в которой говорилось, что это может быть конфигурация iis сайта, поэтому я проверил, у меня есть сопоставление с файлом библиотеки .net 2.0 с помощью axd расширение..поэтому я сомневаюсь, что это была проблема, однако я удалил и воссоздал сайт iis..и все равно не работает...
я также включил эту строку в веб-конфигурацию..
<add verb="GET" path="WebResource.axd" type="System.Web.Handlers.AssemblyResourceLoader" validate="true"/>
это тоже не помогло..
кто-нибудь знает, куда я могу пойти с этим?...
РЕДАКТИРОВАТЬ:я наткнулся на это в средстве просмотра событий..
Event code: 3005
Event message: An unhandled exception has occurred.
Event time: 05/05/2009 2:38:16 PM
Event time (UTC): 05/05/2009 6:38:16 PM
Event ID: 8579dbce2f5844169b1740bb95ebffb1
Event sequence: 8
Event occurrence: 1
Event detail code: 0
Application information:
Application domain: /LM/W3SVC/1/Root/SVN_WORKSPACE/WWWROOT/WorkEstimateSystem-12-128860222914549340
Trust level: Full
Application Virtual Path: /SVN_WORKSPACE/WWWROOT/WorkEstimateSystem
Application Path: c:\inetpub\wwwroot\SVN_WORKSPACE\WWWROOT\WorkEstimateSystem\
Machine name: GREGE6500
Process information:
Process ID: 2276
Process name: aspnet_wp.exe
Account name: GREGE6500\ASPNET
Exception information:
Exception type: HttpException
Exception message: Session state is not available in this context.
Request information:
Request URL: http://localhost/SVN_WORKSPACE/WWWROOT/WorkEstimateSystem/WebResource.axd?d=gPWI1Nyst2kh_ORsvV-AHCh4GSmizSjDuHRCpBgAKBsmi1Zr6e44K950Zcfsdc4p2GuNTPmRl4yAADV0USSNLFQQ7sk-iY1WVt4JJWJE_yg1&t=633771228432707325
Request path: /SVN_WORKSPACE/WWWROOT/WorkEstimateSystem/WebResource.axd
User host address: 127.0.0.1
User:
Is authenticated: False
Authentication Type:
Thread account name: GREGE6500\ASPNET
Thread information:
Thread ID: 8
Thread account name: GREGE6500\ASPNET
Is impersonating: False
Stack trace: at System.Web.HttpApplication.get_Session()
at GlobalClass.CURRENT_EMPLOYEE_ID()
at GlobalClass.checkLogin(String pagerequested)
at GlobalClass.Application_OnPostRequestHandlerExecute(Object sender, EventArgs e)
at System.Web.HttpApplication.SyncEventExecutionStep.System.Web.HttpApplication.IExecutionStep.Execute()
at System.Web.HttpApplication.ExecuteStep(IExecutionStep step, Boolean& completedSynchronously)
Custom event details:
For more information, see Help and Support Center at http://go.microsoft.com/fwlink/events.asp.
global.asax имеет некоторые функции начала и завершения сеанса, а также функции запуска и завершения приложения.Есть ли способ просто сказать, что если запрос поступает от axd, сделайте что-то другое или не запускайте эти пользовательские функции?
ЗАФИКСИРОВАННЫЙ:
внутри страницы global.asax..
Sub Application_OnPostRequestHandlerExecute(ByVal sender As Object, ByVal e As EventArgs)
select case requestedPageName
case "webResource.axd"
exit sub
это исправило!
Решение
Метод «Application_OnPostRequestHandlerExecute» запускается всегда, когда обрабатывается запрос, который обрабатывает .Net.Сюда входит «webresource.axd».В этом методе проверьте, является ли текущий URL-адрес «webresource.axd».Если это так, то не используйте сеанс.
Другие советы
Я использую разворот Farpoint, который показывает только одну страницу с множеством строк.Вот версия С# того, что я попробовал первым (не сработало):
Global.asax:
protected void Application_OnPostRequestHandlerExecute(object sender, EventArgs e )
{
String requestedPageName = VirtualPathUtility.GetFileName(Request.FilePath);
switch (requestedPageName)
{
case "WebResource.axd":
return;
}
}
Решение по этой ссылке сработало для меня, но мне пришлось увеличить число:http://www.acumen-corp.com/Blog/tabid/298/EntryId/8/ASP-NET-Error-ThrowIfMaxHttpCollectionKeysExceeded.aspx
Web.Config:
<appSettings>
<add key="aspnet:MaxHttpCollectionKeys" value="5000" />
</appSettings>
В этом связанном сообщении используется то же решение:Ошибка «Операция недействительна из-за текущего состояния объекта» во время обратной передачи