столкнулся с этой проблемой также.Моя ситуация была немного другой.
У меня была эта структура, и она не будет работать для меня.
[DataContract]
public class MJPEGCamera : Camera
{
}
[DataContract]
public class H264Camera : Camera
{
}
[DataContract]
public class Camera
{
[DataMember]
public string cameraName { get; set; }
[DataMember]
public string address { get; set; }
[DataMember]
public string format { get; set; }
[DataMember]
public string archiveDaysUrl { get; private set; }
[DataMember]
public string archiveHoursUrl { get; private set; }
}
Так что я просто создал фабрику в камере, чтобы выполнить то, что мне нужно.Надеюсь, что это поможет кому-то, кто найдет этот ответ.