wcf service, форма в отделном потоке
От: pumpurumer  
Дата: 26.11.10 11:39
Оценка:
Есть singletone, который обслуживает запросы от клиента, простой сервис, без callback
 [ServiceBehavior(InstanceContextMode = InstanceContextMode.Single,
                        ConcurrencyMode = ConcurrencyMode.Single)]
    public class PrinterSingletone : IPrintServer
    {
        public IList<PrintTarget> GetPrinters()
        {
            //...
        }
    }

запускается вот так:
        [MTAThread]
        static void Main(string[] args)
        {
            FormFakeKKM.Init();
            XmlConfigurator.Configure();
            var service = new PrinterSingletone();
            var serviceHost = new ServiceHost(service);
            serviceHost.Open();
            Console.ReadKey();
            serviceHost.Close();
        }

FormFakeKKM.Init — запускает отдельный поток, в котором работает ShowDialog у формы.

А теперь проблема: если поток с формой не запушен, все отрабатывает нормально, если запустить поток формы — сервис перестает работать, клиенты при запросе отваливается по таймауту. (логи говорят что метод сервиса ваобше не запускается)

В чем дело? что я делаю не так?
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.