WCF에서 소비하기 위해 WCF를 통해 데이터 컬렉션의 하위 집합을 푸시하려고합니다. 즉, 페이징 된 데이터를 생각합니다. 따라서이 컬렉션은 한 페이지 분량의 데이터와 총 수의 결과를 갖기를 바랍니다. List를 확장하는 사용자 정의 객체를 만들어이 작업이 간단해야한다고 생각했습니다. 그러나, 내가하는 모든 일은 내 TotalNumber 속성에서 0으로 오게됩니다. 모든 데이터가 직렬화/직렬화가 올바르게 처리되지만 그 단일 정수는 전혀 나타나지 않습니다.이 목록을 serialize 할 수 없음 <T> 내선
여기에 실패 내 첫 번째 시도이다 :
[Serializable]
public class PartialList<T> : List<T>
{
public PartialList()
{
}
public PartialList(IEnumerable<T> collection)
: base(collection)
{
}
[DataMember]
public int UnpartialTotalCount { get; set; }
을 그리고 여기에 동일한 방법으로 실패한 내 두 번째 시도이다 : 거래는 여기에 무엇
[Serializable]
public class PartialList<T> : List<T>, ISerializable
{
public PartialList()
{
}
public PartialList(IEnumerable<T> collection)
: base(collection)
{
}
[DataMember]
public int UnpartialTotalCount { get; set; }
protected PartialList(SerializationInfo info, StreamingContext context)
{
UnpartialTotalCount = info.GetInt32("UnpartialTotalCount");
}
public void GetObjectData(SerializationInfo info, StreamingContext context)
{
info.AddValue("UnpartialTotalCount", UnpartialTotalCount);
}
}
은?
'[DataContract]'속성은 런타임 오류로 인해 부적절한 콜렉션이 발생합니다. 정확한 오류가 있지만 이미 시도했습니다. – Jaxidian