在C#PCL中存储设置的最佳方法是什么

卷发

我是跨平台C#应用程序的开发人员,该应用程序当前针对Windows Store和Xamarin环境。我有一个由所有应用程序引用的共享可移植类库(PCL),其中定义了核心应用程序逻辑和算法,包括存储,网络,数据库和设置。

我需要的是一种更智能的存储设置方式。我不想使用任何键值方法或XML文件,因为这些方法已完全过时,因此在C#中很容易实现:

[SettingsNode("app_settings")]
class AppSettings
{
    public double SomeNumber;
    public object SomeSerializable;

    public byte[] SomeBytes;

    [SettingsNode("custom_setting_name")]//just specifying XML/etc node name with SettingsNode attribute
    public string SomeKey;
}

class x
{
    void y()
    {
        AppSettings superSettingsSolution = Engine.LoadEntry<AppSettings>("test.xml");
        superSettingsSolution.SomeBytes = new byte[10];
        superSettingsSolution.SomeNumber = 4.6d;
        superSettingsSolution.SomeSerializable = new object();//[Serializable] class
        Engine.SaveEntry<AppSettings>("test.xml", superSettingsSolution);
    }
}

我将使用PCLStorage包进行跨平台存储,因此我没有在代码中引用System.Windows.Storage,而且我也不想这样做。

我的问题:C#的PCL的代码示例库/项目/程序包附近有什么吗?对不起,如果我要问些琐碎的事情,但是我还没有使用“便携式” / windows8程序员。

卷发
    using System.Xml.Serialization;
    using PCLStorage;
    using System.IO;

    public virtual async Task<T> LoadSettings<T>(IFile file = null)
        where T : IApplicationSettings
    {
        // File
        if (file == null)
            file = DefaultSettingsFile;

        // Open file
        using (Stream fileStream = await file.OpenAsync(FileAccess.Read))
        {
            var xmls = new XmlSerializer(typeof(T));
            return (T)xmls.Deserialize(fileStream);
        }
    }

    public virtual async Task SaveSettings(object settings, IFile file = null)
    {
        // File
        if (file == null)
            file = DefaultSettingsFile;

        // Open file
        using (Stream fileStream = await file.OpenAsync(FileAccess.ReadAndWrite))
        {
            var xmls = new XmlSerializer(settings.GetType());
            xmls.Serialize(fileStream, settings);
        }
    }

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

在Google App Engine中存储配置设置的最佳方法是什么?

来自分类Dev

在JSON中存储日期/时间的最佳方法是什么?

来自分类Dev

在Redis中存储对象的最佳方法是什么?

来自分类Dev

在iOS中存储会话ID的最佳方法是什么?

来自分类Dev

将日期存储在saveInstanceState中的最佳方法是什么?

来自分类Dev

在mysql db中存储映像的最佳方法是什么

来自分类Dev

在Rails中调用Postgres存储函数的最佳方法是什么?

来自分类Dev

在Postgres中存储JSON的最佳方法是什么

来自分类Dev

在Firestore中存储日期的最佳方法是什么?

来自分类Dev

在MySQL DB中存储单个值的最佳方法是什么?

来自分类Dev

在Jackrabbit存储库中归档文档的最佳方法是什么?

来自分类Dev

在mysql中存储数组的最佳方法是什么?

来自分类Dev

在PostgreSQL中存储基于NodaTime的值的最佳方法是什么?

来自分类Dev

在数组中存储大量数据的最佳方法是什么?

来自分类Dev

在documentdb中存储日期时间值的最佳方法是什么?

来自分类Dev

在VSTO插件中存储某些数据的最佳方法是什么?

来自分类Dev

在文件中存储大量对象的最佳方法是什么?

来自分类Dev

在C#应用程序中存储数据的最佳方法是什么

来自分类Dev

在Rails中设置固定对象关系的最佳方法是什么

来自分类Dev

在片段中显示设置选项的最佳方法是什么

来自分类Dev

存储用户功能的最佳方法是什么?

来自分类Dev

存储用户功能的最佳方法是什么?

来自分类Dev

在本地存储 id 的最佳方法是什么?

来自分类Dev

存储日期列表的最佳方法是什么

来自分类Dev

从存储在本地存储中的数组中获取数据的最佳方法是什么?

来自分类Dev

存储字符串的最佳方法是什么?SharedPreferences设置集合还是文件?

来自分类Dev

在C ++中定义全局数据的最佳方法是什么?

来自分类Dev

从C ++中的函数返回向量的最佳方法是什么

来自分类Dev

在C ++中实现回调的最佳方法是什么

Related 相关文章

  1. 1

    在Google App Engine中存储配置设置的最佳方法是什么?

  2. 2

    在JSON中存储日期/时间的最佳方法是什么?

  3. 3

    在Redis中存储对象的最佳方法是什么?

  4. 4

    在iOS中存储会话ID的最佳方法是什么?

  5. 5

    将日期存储在saveInstanceState中的最佳方法是什么?

  6. 6

    在mysql db中存储映像的最佳方法是什么

  7. 7

    在Rails中调用Postgres存储函数的最佳方法是什么?

  8. 8

    在Postgres中存储JSON的最佳方法是什么

  9. 9

    在Firestore中存储日期的最佳方法是什么?

  10. 10

    在MySQL DB中存储单个值的最佳方法是什么?

  11. 11

    在Jackrabbit存储库中归档文档的最佳方法是什么?

  12. 12

    在mysql中存储数组的最佳方法是什么?

  13. 13

    在PostgreSQL中存储基于NodaTime的值的最佳方法是什么?

  14. 14

    在数组中存储大量数据的最佳方法是什么?

  15. 15

    在documentdb中存储日期时间值的最佳方法是什么?

  16. 16

    在VSTO插件中存储某些数据的最佳方法是什么?

  17. 17

    在文件中存储大量对象的最佳方法是什么?

  18. 18

    在C#应用程序中存储数据的最佳方法是什么

  19. 19

    在Rails中设置固定对象关系的最佳方法是什么

  20. 20

    在片段中显示设置选项的最佳方法是什么

  21. 21

    存储用户功能的最佳方法是什么?

  22. 22

    存储用户功能的最佳方法是什么?

  23. 23

    在本地存储 id 的最佳方法是什么?

  24. 24

    存储日期列表的最佳方法是什么

  25. 25

    从存储在本地存储中的数组中获取数据的最佳方法是什么?

  26. 26

    存储字符串的最佳方法是什么?SharedPreferences设置集合还是文件?

  27. 27

    在C ++中定义全局数据的最佳方法是什么?

  28. 28

    从C ++中的函数返回向量的最佳方法是什么

  29. 29

    在C ++中实现回调的最佳方法是什么

热门标签

归档