C#, Отладка HttpHandler
-
21-08-2019 - |
Вопрос
У меня есть HTTP-обработчик, который является точкой входа для 90% нашего приложения.По сути, он получает запрос, обрабатывает большое количество данных и возвращает очень конкретный файл в зависимости от клиента и веб-страницы, на которую он встроен, и т.д.Я настроил Сопоставления приложений так что все .kab расширения указывают на C:\Windows...\aspnet_isapi.dll.Я добавил свою библиотеку DLL HttpHandler в каталог BIN для моего веб-сайта.Когда я пытаюсь перейти на тестовую страницу, iFrame отображает значение 404. Я что-то пропустил в своей настройке HttpHandler?
Что касается отладки моего кода, я пытался прикрепить, но я продолжаю получать ошибку 404 на странице, и она никогда не переходит в мой код. Каков наилучший практический метод для привязки к проекту в режиме отладки?
Базовая настройка для тестирования (все локальные на одной машине):
- IIS 5.1 в Windows XP Pro – запуск простого Jane default.aspx:
<body>
<form id="form1" runat="server">
2 пикселя;z-индекс:100;переполнение:скрытый;ширина:500 пикселей;высота:423px;" src="http://localhost/barrows.kab?client=33ee472yaaM24a">
</form>
</body>
- VS2005 работает в режиме подключения к процессу INETINFO.EXE.
Решение
Вам также необходимо сопоставить расширение .cab с вашим классом обработчика в файле web.config.
Видишь здесь.
например ,
<httpHandlers>
<add verb="*" path="*.cab"
type="My.Assembly,My.Assembly.Handler, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=whatever"
validate="false"/>
....
Другие советы
Вернитесь к сопоставлениям приложений и убедитесь, что флажок "Проверить существование файла" снят.Это приведет к тому, что все, что связано с .kab, будет обрабатываться .NET.
Всего один комментарий к отмеченному как правильный ответ;тип должен быть указан наоборот, т.е.сначала обработчик, а затем имя сборки (например:type="Моя.Сборка.Обработчик, Моя.Сборка, ...")