Windows 8 如何在Windows应用商店(Metro风格)应用程序中从XML资源读取数据?

Windows 8 如何在Windows应用商店(Metro风格)应用程序中从XML资源读取数据?,windows-8,microsoft-metro,application-resource,Windows 8,Microsoft Metro,Application Resource,我有一个windows应用商店应用程序。我有一个包含数据的XML文件。我需要将此文件添加为我的应用程序的资源。我需要从该文件将数据读取到XDocument 1将XML文件添加到项目时,应设置什么生成操作?我认为这是一种满足 2如何从这个XML文件中获取XDocument对象 2小时后,我得到了以下代码: public static class DataLoader { public static XDocument LoadFromXmlResource(string path){

我有一个windows应用商店应用程序。我有一个包含数据的XML文件。我需要将此文件添加为我的应用程序的资源。我需要从该文件将数据读取到XDocument

1将XML文件添加到项目时,应设置什么生成操作?我认为这是一种满足

2如何从这个XML文件中获取XDocument对象

2小时后,我得到了以下代码:

public static class DataLoader {
    public static XDocument LoadFromXmlResource(string path){
        path.Replace('\\', '/');
        path.TrimEnd('/');
        string uriPath = "ms-appx:///MyApp/" + path;
        Task<StorageFile> operation = StorageFile.GetFileFromApplicationUriAsync(new Uri(uriPath)).AsTask<StorageFile>();
        StorageFile file = operation.Result;
        Task<string> fileReadingTask = FileIO.ReadTextAsync(file).AsTask<string>();
        string fileContent = fileReadingTask.Result;
        XDocument result = XDocument.Parse(fileContent, LoadOptions.None);
        return result;
    }
}

这是可行的,但我不是舒尔认为它是正确的。

我没有其他办法。你可以另找一个。

我没有别的办法。您可以尝试查找其他内容。

这是在应用程序中引用内容的正确方法。您还可以通过ResourceLoader将.resw文件添加到项目中,以存储运行时加载的资源

资源是不同的,因为它们被设计成文化敏感的,所以它们很适合翻译按钮文本值等

如果您不需要此功能,那么使用构建操作内容添加的资产是完美的,您可以使用ms appx或ms appdata URI方案来解决这些问题

通过ms appx打包内容

通过ms appdata的可变数据

-及-


这是在应用程序中引用内容的正确方法。您还可以通过ResourceLoader将.resw文件添加到项目中,以存储运行时加载的资源

资源是不同的,因为它们被设计成文化敏感的,所以它们很适合翻译按钮文本值等

如果您不需要此功能,那么使用构建操作内容添加的资产是完美的,您可以使用ms appx或ms appdata URI方案来解决这些问题

通过ms appx打包内容

通过ms appdata的可变数据

-及-


提高你的-1,因为你回来后说你没有找到其他方法,这是很公平的。提高你的-1,因为你回来后说你没有找到其他方法,这是很公平的。