0

从包含对象 Friend 的 xml 文件中读取时出现问题!

file.exist() 返回 true 但是当他打开存储时,抛出异常!

public static async Task<List<Friend>> Load<Friend>(string file)
{           
    IsolatedStorageFile storage = IsolatedStorageFile.GetUserStoreForApplication();
    List<Friend> friend = Activator.CreateInstance<List<Friend>>();

    if (storage.FileExists(file))
    {
        IsolatedStorageFileStream stream = null;
        try
        {
            stream = storage.OpenFile(file, FileMode.Open);
            XmlSerializer serializer = new XmlSerializer(typeof(List<Friend>));

            friend = (List<Friend>)serializer.Deserialize(stream);
        }
        catch (Exception)
        {
        }
        finally
        {
            if (stream != null)
            {
                stream.Close();
                stream.Dispose();
            }
        }
        return friend;
    }
    return friend;
}
4

1 回答 1

1

您的方法不使用任何异步调用,因此不应标记它async

public static List<Friend> Load(string file) 
{

编译器会警告您,因为您将方法标记为异步,并使其返回Task<T>,但您不调用和等待任何异步方法,因此它将始终同步运行。

于 2013-10-17T16:13:39.407 回答