Я пытаюсь создать общую библиотеку служб, совместно используемую веб-службой WCF и локальной службой данных. Тем не менее, при попытке использовать сервис, нажав на
Проект -> Добавить ссылку на сервис
и затем, пытаясь использовать базовый интерфейс вместо интерфейса прокси, я получаю ошибку приведения со следующим кодом:
IMyService _context = (IMyService)new ServiceReference.MyService();
Вот макет проектов / классов:
Проект общей библиотеки
[ServiceContract]
public interface IMyService
{
[OperationContract]
void DoWork();
}
Проект веб-службы
public partial class MyService : IMyService
{
public void DoWork()
{
//DO STUFF
}
}
Клиентский проект
IMyService _context = (IMyService)new ServiceReference.MyService();
выдана ошибка времени выполнения: невозможно преобразовать объект.
IMyService _context = new ServiceReference.MyService();
выдана ошибка времени компиляции: явное приведение отсутствует.
(обратите внимание, что клиентский проект ссылается на проект Common Library)