Я построил небольшое решение, содержащее 4 проекта:
Контракт: содержит мои (сгенерированные t4) сущности и интерфейс для моей службы
Сервис: содержит мой (сгенерированный t4) контекст и реализацию моего сервиса
Хост: содержит минимум для размещения службы
ServiceHost host = новый ServiceHost (typeof (InleerAppService));
try
{
host.Open();
Console.WriteLine("The service is ready!");
Console.ReadKey();
host.Close();
}
catch (CommunicationException cex)
{
Console.WriteLine(cex.Message);
}
var factory = new ChannelFactory ("InleerAppService");
IInleerAppService service = factory.CreateChannel();
var result = service.ReturnInput("test string"); // just returns the input string, this works!
Console.WriteLine(result);
var result2 = service.GetAllCompanies(); // this doesn't and crashes the client
foreach (Company c in result2)
{
Console.WriteLine(c.Name);
}
Console.ReadKey();
Вы понимаете, я хотел бы выяснить, что происходит. Но я не очень понимаю, как я могу это отладить. Сначала я запускаю хост с помощью Ctrl + F5, затем клиент. Но это не позволяет мне отлаживать. Как мне перейти к этому, , используя эту настройку ? Я знаю, что есть и другие способы работы со службами, но в этой части я просто хочу сосредоточиться на этой настройке.