Praktykowałem API WinRT, ale napotkałem pewne problemy, potrzebuję twojej pomocy.DataContractSerializer w WinRT
Chcę spróbować DataContractSerializer
i odniesienie do tej strony:
http://winrtstoragehelper.codeplex.com/
Kod:
myślę, że powinno być (bug?):
Stream inStream = await Task.Run(() => readStream.OpenRead());
Ale najdziwniejsze jest to, że jeśli używam tylko:
Stream inStream = readStream.OpenRead());
i mijam ten strumień do:
DataContractSerializer.WriteObject
API będzie przebijał zawsze.
Ale jeśli mogę użyć:
Stream inStream = await Task.Run(() => readStream.OpenRead());
I zdać ten strumień do WriteObject
to będzie działać dobrze.
Nie mam pojęcia, dlaczego ten symptom występuje tylko wtedy, gdy nie używam do transmisji strumienia Task.Run
i await
.
Czy ktoś może udzielić mi porady lub sugestii? Metoda
Ale
Stream InStream = readStream.OpenRead() nie być nazwany "asynchroniczny"
nie wiem dlaczego muszę utworzyć zadanie celowo, aby to zrobić.
Dzięki.