Есть общий сервисный интерфейс, реализованный с помощью нескольких технологий.
Например, у меня 2 интерфейса:
- IGenralService
- IWcfService, унаследованный от IGenralService.
Базовый интерфейс:
public interface IGenralService
{
bool Login(string username, string password);
}
И сервис wcf:
public interface IWcfService : IGenralService
{
[OperationContract(IsOneWay = false)]
[FaultContract(typeof(Exception))]
void DoSomething();
}
IWcfService специфичен для Wcf и требует атрибута «OperationContract» для методов wcf. Метод «Login» не включает атрибут «OperationContract».
Есть ли способ добавить атрибут к собственному методу?
Login
-метод дляIWcfService
был украшен атрибутом, но не дляIGeneralService
? Это в основном бессмысленно, поскольку любой класс, реализующий какой-либо из ваших интерфейсов, не наследует его атрибуты, вам придется повторно объявить их. Так что вы все равно можете опустить их в интерфейсе. - person HimBromBeere   schedule 19.01.2017