Модераторы: gambit
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Вопрос по HttpHandler'ам 
:(
    Опции темы
priest08
Дата 28.7.2010, 09:37 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 25
Регистрация: 22.3.2008

Репутация: нет
Всего: нет



Объявляю хендлер в конфиге:
Код

<httpHandlers>
                        .....
            <add verb="GET,POST,HEAD" path="PingService.ashx" type="MoneyProcessing.Web.Processing.PingService, MoneyProcessing.Web"/>
                        .....
</httpHandlers>

Описываю его:
Код

using System;
using System.Collections.Generic;
using System.Text;
using System.Web;
using System.Net;

namespace MoneyProcessing.Web.Processing
{

    using MoneyProcessing.DataAccess.Data;
    using MoneyProcessing.DataAccess;
    using MoneyProcessing.Crypto;

    public class PingService : IHttpHandler
    {
        bool IHttpHandler.IsReusable
        {
            get { return false; }
        }

        void IHttpHandler.ProcessRequest(HttpContext context)
        {
            HttpContext Context = HttpContext.Current;
            try
            {
                //Делаю всякое разное.
            }
            catch (Exception e)
            {
                context.Response.Clear();
                context.Response.Write("Error: " + e.Message);
            }

            context.Response.End();
        }
    }
}

Т.е. свойство IsReusable возвращает false. Правильно ли я понимаю. Как только я запущу этот хендлер, он отработает свой метод ProcessRequest и все. Больше он ни разу запускаться не будет? Чтобы я ни делал (какие бы запросы и куда бы ни слал) и сколько бы времени не прошло..?
Второй вопрос: если я остановлю iis и заново запущу его, то я смогу опять один раз вызвать хендлер? Если я поменяю файлики сервера тупо в виртуальном каталоге, то после создания нового домена и переносе приложения туда ASP.NET'ом, я опять этот хэндлер смогу один раз запустить?
PM MAIL   Вверх
Gleb
Дата 2.8.2010, 20:47 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 56
Регистрация: 11.6.2005

Репутация: нет
Всего: 1



Цитата(priest08 @  28.7.2010,  12:37 Найти цитируемый пост)
Правильно ли я понимаю.

Нет, не правильно.
Свойство IsReusable указывает на то, может ли экземпляр данного класса использоваться повторно для других запросов. При IsReusable=false каждый раз будет создаваться новый экземпляр.

На практике если у вашего обработчика есть поля или свойства, то нужно использовать IsReusable=false.
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Прежде чем создать тему, посмотрите сюда:
Любитель
Mymik
mr.DUDA

Используйте теги [code=csharp][/code] для подсветки кода. Используйтe чекбокс "транслит" если у Вас нет русских шрифтов.

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Любитель, Mymik, mr.DUDA.

 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Разработка под ASP.NET | Следующая тема »


 




[ Время генерации скрипта: 0.0758 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.