gpt4 book ai didi

c# - 在 UWP 中读取 XML 文件时如何明确指定类型参数

转载 作者:数据小太阳 更新时间:2023-10-29 02:34:16 25 4
gpt4 key购买 nike

我正在开发一个 UWP 应用程序,我需要在其中读取 XML 文件并将其写入设备。我花了一段时间搜索,才找到涵盖基础知识的教程,足以让我“有点”理解它。本教程Serialize/Deserialize an Object to an XML File (Windows Universal apps 8.1)有一个简洁的例子,根据评论应该有效。但是,当我 F5 The type arguments for method cannot be inferred from the usage 时,我得到了这个错误。尝试明确指定类型参数。

这条线上的错误面

Robot robot2 = await XmlIO.XmlRW.ReadObjectFromXmlFileAsync("robbie.xml");

它指向的方法是this

    public static async Task<T> ReadObjectFromXmlFileAsync<T>(string filename)
{
// this reads XML content from a file ("filename")
// and returns an object from the XML
T objectFromXml = default(T);
var serializer = new XmlSerializer(typeof(T));
StorageFolder folder = ApplicationData.Current.LocalFolder;
StorageFile file = await folder.GetFileAsync(filename);
Stream stream = await file.OpenStreamForReadAsync();
objectFromXml = (T)serializer.Deserialize(stream);
stream.Dispose();
return objectFromXml;
}

我想也许我需要将 Task < T > 更改为 Task < string > 但我也无法做到这一点。那么我需要做什么来显式指定类型参数?

最佳答案

编译器无法确定 T 的类型。您需要明确指定它:

Robot robot2 = await XmlIO.XmlRW.ReadObjectFromXmlFileAsync<Robot>("robbie.xml");

关于c# - 在 UWP 中读取 XML 文件时如何明确指定类型参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34668742/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com