Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ios/107.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# Xamarin iOS app.config文件_C#_Ios_.net_Xamarin.ios_Xamarin - Fatal编程技术网

C# Xamarin iOS app.config文件

C# Xamarin iOS app.config文件,c#,ios,.net,xamarin.ios,xamarin,C#,Ios,.net,Xamarin.ios,Xamarin,我想知道是否有办法将一些数据存储在类似app.config的文件中。我想存储的数据是:URL及其密钥 我试着查找财产清单,但我不知道如何访问这些 编辑1:主要思想是使用我的PCL(可移植类库)中的文件。多平台使用 谢谢你的帮助 没有,实际上没有app.config。对于iOS,有plist文件,它们是简单的结构化XML键值文件()。 在Xamarin.iOS中,您可以将它们捆绑为ressource,并按如下方式阅读: public string ReadValueFromSettings(str

我想知道是否有办法将一些数据存储在类似app.config的文件中。我想存储的数据是:URL及其密钥

我试着查找财产清单,但我不知道如何访问这些

编辑1:主要思想是使用我的PCL(可移植类库)中的文件。多平台使用


谢谢你的帮助

没有,实际上没有app.config。对于iOS,有plist文件,它们是简单的结构化XML键值文件()。 在Xamarin.iOS中,您可以将它们捆绑为ressource,并按如下方式阅读:

public string ReadValueFromSettings(string key)
{
        _log.Info();

        string result = "ValueNotFound";

        if (_settings == null)
        {
            if(File.Exists("Settings.plist"))
            {
                var path = NSBundle.MainBundle.PathForResource("Settings", "plist");
                _settings = new NSDictionary(path);
            }
        }

        if(_settings != null)
        {
            var value = _settings.ValueForKey(new NSString(key));

            if(value != null)
                result = value.ToString();
        }

        return result;
}

我们发布了一个nuget库,为Xamarin提供ConfigurationManager功能,特别适用于Xamarin。表单:

这允许从PCL项目中添加唯一的配置文件,并从所有应用程序项目中读取:

ConfigurationManager.AppSettings["config.text"];

你可以在这里一步一步地找到完整的答案:

如果有人无意中发现了这个问题,我找到的最佳答案是

James Montemagno的Xam.Plugins.Settings via:nuget


“Xamarin和Windows的设置插件为Windows Phone Silverlight 8/8.1、Windows Phone 8.1、Windows Store、Xamarin.iOS和Xamarin.Android在使用PCL或任何项目时提供一致的跨平台设置插件,并且Xamarin.Forms和MvvmCross兼容。这使得创建跨平台的.NET应用程序和跨平台设置变得更加容易。从一个PCL管理和使用所有设置,并在每个平台上以本机方式保存*此插件在每个平台上以本机方式存储设置,而不将其保存为Json。这允许您在Android上使用本机功能,如PreferenceActivity。”

为什么不直接存储在文本文件中并从中读取?或SQLite db。您还可以在应用程序中对其进行硬编码,因为在web中将内容放在.config文件中的整个原因在移动设备上几乎没有意义。