更新JSON文件C#W8开发

时间:2012-11-13 22:57:18

标签: c# windows-8 visual-studio-2012

目前,我有一个内容如下的JSON文件:

{
"username": "test", 
"someNumber": 100
}  

我正在使用JSON.Net从网络服务器获取.JSON文件 - C#:

        var http = new HttpClient();
        http.MaxResponseContentBufferSize = Int32.MaxValue;
        var response = await http.GetStringAsync(URI);

        var result = JsonConvert.DeserializeObject<DatClass.Result>(response);

这与获取/设置属性的类一起使用效果很好。 但是,我想知道的是,用户是否有通过文本框UI更新.JSON文件的好方法? 如:

[文本框 - 更新用户名] [更新按钮] - &gt;发送到服务器的用户名 - &gt; .JSON文件已更新 - &gt; [textblock - 在UI中显示更新的用户名]。

我不是在寻找确切的代码解决方案,我宁愿在此寻找好的解决方案,和/或如果这是一个简单的数据库(?)的糟糕想法。

1 个答案:

答案 0 :(得分:1)

确定。现在我明白了:)

所以你想拥有一个数据库。然后读这个。 3种方法

  1. 你的方式。您想要使用JSON文件。好吧它会起作用,但这是一个糟糕的方式imo。如果你有1 MB文件(它不是那么大),那么每次你必须阅读它,反序列化,更新数据,序列化并再次写入。这不是一个好方法。

  2. SQLite的。如果您想要本地数据库使用SQLite。我正在测试它,它看起来很好。缺点是糟糕的。你需要自己管理一些事情但它工作得很好。这是一个本地数据库,所以这不是一个糟糕的方式去

  3. Azure DB。主要的缺点是你的应用程序依赖于互联网连接,你需要创建一个API来提供与数据库的连接,因为Windows应用商店应用程序无法自己连接到它们。您还需要考虑创建缓存引擎,因为每次都没有意义。您可以获取数据并为某些视图缓存它们。这样应用程序将更快地工作

  4. //编辑

    在您更新的案例中,您有2个解决方案

    1. 使用SQLite作为来自Web的数据的较小的本地缓存。这将使您的应用程序更加独立于互联网连接
    2. 只需去网络应用
    3. 在所有这些情况下,你需要一个web中的数据库和一些与它连接的api