заранее извиняюсь за то, что этот вопрос тупой или был ранее покрыт.Я исследовал повсеместно, но не нашел каких-либо ресурсов на WCF / Windows Services, которые охватывают этот вопрос.
У меня есть управляемая служба Windows, которая работает хорошо.Каждые n (> 5) секунд он проверяет состояние (например, потребление памяти) некоторых процессов и других служб Windows, а также выполняет ведение журнала базы данных и при необходимости вызывает события.
Я намереваюсь создать ASP.NETвеб-сайт, который позволит пользователям запрашивать состояние процессов, которые отслеживает служба Windows.Изучив варианты, похоже, что современный метод заключается в использовании службы WCF, размещенной в службе Windows, в качестве посредника между веб-сайтом ASP.NET и службой Windows.Таким образом, пользователь может запросить через браузер моментальный снимок текущего состояния любого набора процессов, за которым следила служба Windows, и ретранслировать этот запрос и последующий ответ через службу WCF (я думаю, с использованием именованных каналов).
Итак, моя трудность заключается в том, что в службе Windows есть набор методов и событий, для которых существует один корневой объект (скажем, MonitorObject).Я не понимаю, как можно создать экземпляр ServiceHost со ссылкой на MonitorObject, чтобы служба WCF могла вызывать методы в службе Windows.Я думаю, что, возможно, мне нужно сделать объект Monitor общим (я VB'ing) членом класса Windows Service (который содержит OnStart и OnStop) и сделать все события общими, чтобы служба WCF могла просто получить доступ к WindowsService..SharedMonitorObject без необходимости передавать объект ....
Однако я теряюсь в теме и ищу любой совет о том, как лучше поступить.
Заранее спасибо.