Заброшенный объект Silverlight, отправленный из-за ошибки веб-службы

На стороне сервера у меня есть два типа объектов

   [DataContract]
    public class Tablo5 { 
      //common class
    }

    [DataContract]
    public class Tablo7 : Tablo5{
     [DataMember]
        public Double {get;set;}
    }
    public class Tablo8 : Tablo5{
     [DataMember]
        public Int32 {get;set;}
    }

Я добавляю их экземпляры в List<Tablo5> и отправить через веб-сервис. На сайте клиента я хочу вернуть его Tablo7 а также Tablo8 и использовать. Итак, мы пытаемся отправить его, я получаю "Server NOT FOUND" ошибка. Хотя, когда я пытаюсь войти на стороне сервера, до return Все отлично. Можете ли вы намекнуть, если что-то с отправкой приведенных объектов неправильно или я что-то напутал?

1 ответ

Ваш сериализатор должен знать, что Tablo7 наследуется от Tablo5, а Tablo8 наследуется от Tablo5:

[DataContract(IsReference = true)]
[KnownType(typeof(Tablo7))]
[KnownType(typeof(Tablo8))]
public class Tablo5 { 
  //common class
}

[DataContract]
public class Tablo7 : Tablo5{
    [DataMember]
    public Double MyProp {get;set;}
}

[DataContract]
public class Tablo8 : Tablo5{
    [DataMember]
    public Int32 MySecondProp {get;set;}
}

После обновления прокси на стороне клиента

Другие вопросы по тегам