读取 xml 时出现问题:“System.IO.IsolatedStorage.IsolatedStorageExcep

本文关键字:System IO IsolatedStorage IsolatedStorageExcep 问题 xml 读取 | 更新日期: 2023-09-27 18:35:52

从包含对象 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;
}

读取 xml 时出现问题:“System.IO.IsolatedStorage.IsolatedStorageExcep

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

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

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