Здравствуйте, у меня есть служба WCF, которая имеет класс-оболочку:
[DataContract]
[KnownType(typeof(List<IFNStatusViewModel>))]
public class ResolvedProcessModel
{
[DataMember]
public List<IProcessViewModel> ResolvedModel { get; set; }
}
Поскольку список IFNStatusViewModel
наследуется от IProcessViewModel
.
Данные передаются, но проблема в том, что он возвращается из контракта как List<object>
вместо List<IFNStatusViewModel>
, как показано ниже:
[System.Runtime.Serialization.DataMemberAttribute()]
public System.Collections.Generic.List<object> ResolvedModel {
get {
return this.ResolvedModelField;
}
set {
if ((object.ReferenceEquals(this.ResolvedModelField, value) != true)) {
this.ResolvedModelField = value;
this.RaisePropertyChanged("ResolvedModel");
}
}
}
Есть ли способ явно указать класс для сериализации как List<IFNStatusViewModel>
в принимающей стороне контракт?