У меня есть интерфейс ICustomerService:
public interface ICustomerService
{
CustomerList FindAll();
}
и конкретный класс, реализующий этот интерфейс. Теперь мне нужно представить метод через Интернет с помощью wcf / rest, и мне пришлось изменить определение интерфейса на это:
[ServiceContract]
public interface ICustomerService
{
[OperationContract]
[WebInvoke(
Method = "GET",
UriTemplate = "Customers")]
CustomerList FindAll();
}
Мой вопрос заключается в том, есть ли какие-либо недостатки в том, что эти атрибуты присоединены к вашему интерфейсу, если есть клиенты, которые хотят использовать реализацию, используя dll-ссылку вместо использования остальных API? Я знаю о недостатках использования REST, таких как необходимость иметь ваши параметры в качестве строки типа, если они в URI.