¿Cómo defino DataContract para clases abstractas en WCF?Uso de WCF con clases abstractas
Tengo una clase "Persona" que comunico con éxito utilizando WCF. Ahora agrego una nueva clase "Foo" a la que se hace referencia desde Person. Todo sigue siendo bueno Pero cuando hago que Foo sea abstracto y defino una subclase, falla. Falla en el lado del servidor con una CommunicationException, pero eso realmente no me dice mucho.
Mis clases simplificados para las pruebas realizadas:
[DataContract]
public class Person
{
public Person()
{
SomeFoo = new Bar { Id = 7, BaseText = "base", SubText = "sub" };
}
[DataMember]
public int Id { get; set; }
[DataMember]
public Foo SomeFoo { get; set; }
}
[DataContract]
public abstract class Foo
{
[DataMember]
public int Id { get; set; }
[DataMember]
public string BaseText { get; set; }
}
[DataContract]
public class Bar : Foo
{
[DataMember]
public string SubText { get; set; }
}
Perfecto. ¡Muchas gracias! –