Вы можете это сделать?Можете ли вы использовать интерфейсы как DataMembers в WCF?
[DataContract]
public class RegisterEndpointRequest : NotificationRegistrationServiceRequest
{
[DataMember]
public IEndpoint Endpoint { get; set; }
}
Обратите внимание на конечной точке элемент представляет собой интерфейс (IEndpoint
), а не класс. Разрешит ли WCF это?
* Я думаю, что это будет * , до тех пор, пока какая-либо конкретная реализация 'IEndpoint' у вас для вашего свойства Endpoint' также украшена' DataContractAttribute' и соответствующим 'DataMemberAttribute' для своих членов. ** EDIT **: Плюс, что [Aasmund сказал] (http://stackoverflow.com/a/11800139/74757) о 'KnownTypeAttribute'. –