Передача параметров в службу Windows - PullRequest
2 голосов
/ 18 августа 2010

Я хочу разработать службу Windows, которая будет принимать данные со страницы aspx.Служба Windows и веб-сайт размещены на одном компьютере.

Также мне нужно установить дату и время, когда этот сервис должен работать.эта дата и время могут меняться в зависимости от потребностей клиента.дата и время снова должны быть указаны со страницы aspx.

Ответы [ 6 ]

3 голосов
/ 18 августа 2010

Вопрос довольно широкий, и это означает, что трудно привести хороший пример с примером кода, если вы не будете немного более конкретны в отношении того, что вы уже выяснили, и в чем вам нужна помощь.Исходя из этого, я предполагаю, что вы не знаете, с чего начать.

Две возможности:

Простой: У страницы ASPX и сервера оба указываютта же база данных.Чтобы страница aspx отправляла данные в службу, страница ASPX должна обновить базу данных;сервис должен читать с него.Просто установите сервис для периодического опроса.Вы также можете сохранить свои даты в БД и на странице ASPX обновить даты.

Более продвинутый: Используйте WCF (Windows Communication Foundation), чтобы служба могла прослушивать запросы отстраница ASPX.(Google WECF для примера кода).Вы можете передавать DataSets как параметры в функции, даже используя WCF.

1 голос
/ 18 августа 2010
1 голос
/ 18 августа 2010

Как и любой другой исполняемый файл, служба Windows имеет метод Main с параметрами. Если вы хотите передать некоторые данные службе при запуске, вы можете использовать эти параметры, например, вы можете выгрузить набор данных в файл XML и передать путь к немуфайл при запуске

 static void Main(string[] args)
 {
            // Do something with args array, but il make sure its not null first.
 }

Но если вы хотите передать параметры во время выполнения, вы можете использовать Хост службы Windows WCF

0 голосов
/ 18 августа 2010

Поместите конечную точку WPF в вашу службу?

0 голосов
/ 18 августа 2010

Если вы пишете, что ваш сервис работает постоянно, вы можете использовать FileSystemWatcher для поиска xml-файла, который может сгенерировать страница aspx (вероятно, не самого безопасного, поскольку это означает, что будет каталог, в который кто-то сможет записать, используя сеть).страница).

0 голосов
/ 18 августа 2010

Похоже, что служба должна быть в значительной степени запущена все время (возможно, каждую минуту), и когда она запускается, вся ее логика оборачивается в одно условие, которое проверяет базу данных, чтобы выяснить, должно ли она работать сейчас. " Веб-страница будет хранить эти данные в базе данных.

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