2012-02-02 2 views
2

У меня есть WCF сервис, который размещается в IIS.инициализация объектов один раз в WCF

Мне нужно инициализировать несколько вещей, которые будут существовать во всех вызовах служб.

Где подходящее место для инициализации?

Благодарим за помощь.

ответ

4

Используйте конструктор (или что из BaseService или фактического класса обслуживания), чтобы инициализировать эти свойства

Имейте в виду, что, когда служба WCF настроен на режим Per-Call Например, экземпляр службы будет создан для каждого запроса клиента

Если не строго требуется не использовать какую-либо стратегию Singleton:

Singleton WCF услуга должна быть едва ли используется- Singletons является ем враг масштабируемости! Они имеют смысл только в странных сценариях, регистрирующих один файл, один порт связи или аппаратное устройство.

+0

На самом деле это я хочу сделать, создать файл для ведения журнала и один объект БД. –

+0

будет сложно управлять синхронизацией между потоками, особенно для работы БД –

1

Если ваша служба WCF настроена на использование режима совместимости ASP.NET, просто выполните их инициализацию в Application_OnStart в Global.asax.

Смежные вопросы