在Metro中使用C#处理漫游数据存储的正确方法?

在Metro中使用C#处理漫游数据存储的正确方法?,c#,microsoft-metro,windows-runtime,winrt-xaml,C#,Microsoft Metro,Windows Runtime,Winrt Xaml,我正在创建一个C#Metro/Modern UI应用程序,我需要一种方法来处理一些用户数据(大部分只是小字符串,但数量相当多),特别是我希望数据能够与用户的Microsoft帐户“漫游”。我知道你可以用它来处理这个问题,但它似乎应该更多地用于存储用户ID和其他一次性设置,而我将使用它来存储我的应用程序的所有数据,而且似乎与我获得的空间量有很大关系。我正在考虑使用SkyDrive托管一个“MyApp Data”文件夹,但如何将一个简单的文本文件上载到其中:( 处理这个问题的最佳方法似乎是在Azur

我正在创建一个C#Metro/Modern UI应用程序,我需要一种方法来处理一些用户数据(大部分只是小字符串,但数量相当多),特别是我希望数据能够与用户的Microsoft帐户“漫游”。我知道你可以用它来处理这个问题,但它似乎应该更多地用于存储用户ID和其他一次性设置,而我将使用它来存储我的应用程序的所有数据,而且似乎与我获得的空间量有很大关系。我正在考虑使用SkyDrive托管一个“MyApp Data”文件夹,但如何将一个简单的文本文件上载到其中:(

处理这个问题的最佳方法似乎是在Azure或EC2上设置一个帐户,然后制作一个简单的PHP API,这样我就可以从我的应用程序访问SQL数据库,但我宁愿不必为托管付费

我在StackExchange和Microsoft自己的论坛上看到了关于Metro应用程序存储的其他问题,但大多数问题都是关于本地存储和使用SQL Server处理存储的

那么,我是应该使用漫游设置并关注配额,还是应该尝试使用云托管,还是有更好的解决方案我还没有想到


谢谢!

我会选择基于云的解决方案。一位微软员工告诉我,漫游数据是“尽最大努力”的。如果它真的有效,没有控制权,有时有效,有时无效


就我个人而言,我会尝试使用skydrive选项

有关漫游设置的一些事项: -它们是用于设置的,而不是作为数据复制方案,因此配额 -它们不是即时的。您可以创建一个名为“highpriority”的设置,该设置将在不到一分钟的时间内复制,但其他设置复制可能需要几分钟。如果您需要数据立即可用,则漫游设置不是一个选项。此外,如果您超过配额,则所有数据都将停止复制,这是一件坏事。:)即使设置相同,它也不会在不同版本的应用程序之间复制。此外,如果您在一段时间内(默认为30天)不使用该应用程序,则漫游数据将从云中删除。我很确定漫游数据也可以通过“企业设置”中的“组策略”关闭

你可以利用SkyDrive。确保您下载了Live SDK。使用SkyDrive的概述在这里。。。从根本上说,它只是RESTAPI的集合。请参阅SkyDrive照片示例,了解将文件上载到SkyDrive的应用程序

我没有听说这是“最佳努力”。有很多因素会影响数据漫游,因此您需要考虑不会影响数据漫游的情况,但我非常确定,在大多数情况下,在正常情况下,数据会漫游—只是不会立即漫游。也许我没有和合适的人谈过。:)