Как создать приложение winform в visual studio 2010 для размещения службы wcf - PullRequest
1 голос
/ 10 февраля 2011

У меня есть работающий каркас службы WCF.Я хочу разместить его в приложении winform с простой кнопкой запуска и остановки.

1 Ответ

3 голосов
/ 10 февраля 2011

Так я размещаюсь в консольном приложении, которое легко изменить, чтобы выиграть приложение

public Program()
        {                
                Console.WriteLine("This is the SERVER console");

                var myUri = new Uri[1];                    
                myUri[0] = new Uri(ConfigurationManager.AppSettings["baseAddress"]);

                var timeEntryService = new WCFTimeEntryService();    
                var host = new ServiceHost(timeEntryService, myUri);    
                host.Open();

                Console.WriteLine("Service Started!");    
                Console.WriteLine("Click any key to close...");
                Console.ReadKey();

                host.Close();    

        }

EDIT

Для начала вам нужен интерфейс, который будет использоваться и клиентом, и сервером для связи.

using System;
using System.Runtime.Serialization;
using System.ServiceModel;
using System.Data;

namespace TimeEntryService
{
    [ServiceContract]
    public interface ITimeEntry
    {
        [OperationContract]
        string Ping();    
    }
}

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

using System.ServiceModel;
using System.Data;

namespace TimeEntryService
{
    [ServiceBehavior(InstanceContextMode = InstanceContextMode.Single, ConcurrencyMode = ConcurrencyMode.Multiple)]
    public class WCFTimeEntryService : ITimeEntry
    {
        public string Ping()
        { 
            return "Pong";
        }
    }
}

Затем убедитесь, что вы обновили свой App.config (используйте редактор конфигурации службы WCF) В моем VS2010 его под Сервис -> Редактор конфигурации сервиса (Не уверен, что вам нужно что-то сделать, чтобы показать это там).


Когда он запускается, вы можете использовать тестовый клиент WCF, чтобы подтвердить его работу. C: \ Program Files \ Microsoft Visual Studio 10.0 \ Common7 \ IDE \ WcfTestClient.exe

...