Начало службы WCF - PullRequest
       2

Начало службы WCF

1 голос
/ 17 сентября 2010

У меня есть служба wcf, и я хочу вызвать метод автоматически, сразу после публикации в IIS.Как инициализация службы WCF без необходимости вызова метода вручную или откуда-либо еще.Где я должен разместить свой метод Initialize в службе WCF, чтобы он запускался точно после запуска приложения?

Ответы [ 2 ]

2 голосов
/ 17 сентября 2010

Если вы размещаете в IIS, вы можете использовать событие application_start в Global.asax веб-приложения, в котором размещается служба WCF, для выполнения любой инициализации приложения. Если вы пытаетесь вызвать одну из своих служб при первой ее установке, вероятно, это неправильный подход.

Какова мотивация для запуска некоторого кода при запуске веб-службы? Если вы пытаетесь обойти медленный начальный вызов в службу WCF, я полагаю, вы захотите поработать на стороне клиента WCF, а не в службе ... но я просто догадываюсь о вашей мотивации здесь

0 голосов
/ 17 сентября 2010

Инициализация службы WCF? Так у вас есть синглтон-сервис или вы хотите инициализировать какое-то глобальное состояние? В противном случае инициализация не имеет смысла, потому что экземпляры службы будут созданы для реальных клиентов.

По умолчанию IIS запускает приложение при первом обращении к нему. Если вы поместите инициализацию в Application_Start (HttpApplication или Global.asax), код будет запущен при первом обращении к приложению. Но доступ к сервису - это не то, что может инициировать ваше приложение.

IIS 7.5 (Windows 2008 R2) имеет модуль прогрева, который может запускать некоторый код при перезапуске пула или перезапуске работника. Если вы используете другую версию IIS, вам нужно использовать какое-то внешнее решение, например, пользовательское приложение, регулярно проверяющее вашу службу.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...