Interoperability when returning derived class by base class in WCF
- by mt_serg
I have some simple code:
[DataContract]
[KnownType(typeof(SpecialEvent))]
public class Event
{
//data
}
[DataContract]
public class SpecialEvent : Event
{
//data
}
[ServiceContract]
public interface IService
{
[OperationContract]
List<Event> GetEvents();
}
[ServiceBehavior]
public class Service : IService
{
public List<Event> GetEvents()
{
List<Event> events = new List<Event>();
events.Add(new Event());
events.Add(new SpecialEvent());
return events;
}
}
I know that it works fine in case wcf to wcf.
but what about interoperability?
is it generate standart wsdl and any client can use the service or no?