2012-12-20 8 views
0

나는 XmlSerializer를 함께 내가 저장 방법을 부르는 항목이 내 목록에 추가됩니다 모든 시간을 일하고 있어요 :왜 내 파일이 저장되지 않습니까? XmlSerializer를이 WinRT

async public void save(List<string> eingabe) 
{ 
    var serializer = new XmlSerializer(typeof(List<string>)); 

    StorageFolder storageFolder = ApplicationData.Current.LocalFolder; 
    StorageFile sampleFile = 
     await storageFolder.CreateFileAsync(speicherPfad, CreationCollisionOption.ReplaceExisting); 
    var file = await sampleFile.OpenAsync(FileAccessMode.ReadWrite); 

    serializer.Serialize(file.AsStreamForWrite(), eingabe); 

    file.Dispose(); 
} 

응용 프로그램이 시작 나는 부하 메서드를 호출 할 때

public async Task<List<string>> load() 
{ 
    List<string> ausgabe = new List<string>(); 
    XmlSerializer serializer = new XmlSerializer(typeof(List<string>)); 

    StorageFolder storageFolder = ApplicationData.Current.LocalFolder; 
    StorageFile sampleFile = await storageFolder.CreateFileAsync(speicherPfad, CreationCollisionOption.ReplaceExisting); 

    var file = await sampleFile.OpenAsync(FileAccessMode.Read); 
    List<string> speicher = (List<string>)serializer.Deserialize(file.AsStreamForRead()); 

    file.Dispose(); 

    return speicher; 
} 

문제 : 부하 방법은 파일 (크기 = 0)는 항상 비어 있고 난 몰라 왜 아마 때문에이 옵션의

답변

1

: CreationCollisionOption.ReplaceExisting.

부수적으로 saveTaskawait으로 바꾸는 것이 좋습니다.

+0

오 마이 갓, 어리석은 실수. – gurehbgui

+1

우리 모두 거기에 있었어. :) –

관련 문제