2013-08-02 3 views
0

내가하는 IsolatedStorageSettings에 사용자 정의 클래스의 목록을 저장하기 위해 노력하고 목록에서,하지만 하나는 제대로 여부를 절약 정확하게 검색하고 나는 확실하지 않다되지 무슨 잘못검색 격리 된 저장소

클래스 :

다음
[DataContract()] 
public class Object 
{ 
    public int ID { get; set; } 
    public bool IsDeleted { get; set; } 
    public bool IsActive { get; set; } 
    public string Title { get; set; } 
    public string Author { get; set; } 
    public string Synopsis { get; set; } 
    public string Body { get; set; } 
    public string ImageUrl { get; set; } 
    public string CreationDate { get; set; } 
    public string LastUpdateDate { get; set; } 
    public string DisplayUntilDate { get; set; } 
    public int TotalViews { get; set; } 
    public Gallery Gallery { get; set; } 
} 

나는 그것이

List<Object> to_save = new List<Object>(); 

//이 제대로 작동 개체의 목록을 채우는 저장하려면이 옵션을 사용하고, 그냥 객체 t의 큰 목록을 만든다 내가 시도를 검색 할 때 암탉

var settings = IsolatedStorageSettings.ApplicationSettings; 
    //save to_save to isolated storage 
      settings.Add("Stories", to_save); 
      settings.Save(); 

다음 :

// 얻을 세부 사항을 격리 된 저장소에서

 var settings = IsolatedStorageSettings.ApplicationSettings; 
     List<Object> s = settings["Stories"] as List<Object>; 

는 그냥 나에게 모두 null의 2 개 항목을주고, 내가 생각 직렬화를 잘못하고있는 중이지만 올바른 방법을 모르겠다. 누군가 도움을 줄 수 있습니까?

편집 :

좋아 내가 그러나 그것은 전체 목록이 아닌, 지금 반환이 개 항목은 null가 아니고, 올바른 값을 포함하고, 각 필드에 DataMember를 추가, 나는 전체 목록을 검색 할 수있는 방법, istead 단 2 항목 중?

답변

0

Windows Phone에서 serializer가 상당히 기본이므로 강력하게 직렬화 할 개체를 입력해야합니다.

격리 된 저장소의 경우 기본 데이터 형식 만 사용하므로 "갤러리"개체가 직렬화되지 않을 가능성이 높습니다.

단순한 직렬화를 위해 실제로 데이터 계약 및 데이터 멤버 특성이 필요하지는 않지만이를 사용하여 해를 입히지 않아야합니다.

더 복잡한 직렬화를 수행하려면 XMLSerialiser

을 살펴보십시오.