Я оглянулся и не нашел именно то, что искал.
У меня есть форма Windows и служба wcf в том же проекте, и я размещаю службу wcf вместе с формой, выполняя следующие действия:
Application.EnableVisualStyles();
Application.SetCompatibleTextRenderingDefault(false);
ServiceHost host = new ServiceHost(typeof(Service1));
host.Open();
Application.Run(new Form1());
host.Close();
И приложение, использующее сервис, не имеет проблем с его вызовом.
Моя проблема сейчас вызывает методы службы wcf в форме Windows. Я мог бы просто сделать
Service1 service = new Service1();
service.doWork();
Но, делая это, я не использую тот же экземпляр, что и клиенты Сервиса (даже если я использую InstanceMode.Single), и я хочу.
Я знаю, что мог бы просто реализовать форму окна в качестве клиента графического интерфейса веб-службы (добавив ссылку на службу).
Но я просто хочу, чтобы служба wcf размещалась в форме windows и имела доступ к тому же экземпляру службы, что и клиенты wcf. Как я могу это сделать?