9

ミゲル・デ・イカザより:

モバイル デバイスにより適したライブラリ プロファイルを使用するため、不要な機能を削除しました (Silverlight と同様に、System.Configuration スタック全体など)。

何年にもわたる .NET 開発の後、構成設定web.configapp.configファイルに保存することに慣れてきました。

  • Mono for Android を使用する場合、構成設定をどこに配置すればよいですか?
    • 問題がある場合は、ビルド構成ごとに異なる構成設定も保存したいと思います。
4

4 に答える 4

12

おそらく、共有設定とコンパイル シンボルを使用して、さまざまな構成を管理することをお勧めします。以下は、設定ファイルを使用して、コンパイル シンボルに基づいてキーを追加または変更する方法の例です。さらに、特定の構成でのみ使用できる別の設定ファイルを作成することもできます。これらのキーはすべての構成で使用できるわけではないため、使用する前に必ず確認してください。

var prefs = this.GetSharedPreferences("Config File Name", FileCreationMode.Private);
var editor = prefs.Edit();

#if MonoRelease
editor.PutString("MyKey", "My Release Value");
editor.PutString("ReleaseKey", "My Release Value");
#else
editor.PutString("MyKey", "My Debug Value");
editor.PutString("DebugKey", "My Debug Value");
#endif

editor.PutString("CommonKey", "Common Value");
editor.Commit();
于 2013-01-18T17:11:08.420 に答える
3

現在のプロジェクトでもまったく同じ問題が発生しました。私の最初の衝動は、構成を sqlite のキーと値のテーブルに配置することでしたが、内部の顧客は、構成ファイルの主な理由を思い出させてくれました。
代わりに、XML ファイルを作成してそこに置きます。

string documentsPath = Environment.GetFolderPath(Environment.SpecialFolder.Personal);

そして、これらのプロパティを使用してアクセスします。

public string this[string key]
    {
        get
        {
            var document = XDocument.Load(ConfigurationFilePath);
            var values = from n in document.Root.Elements()
                       where n.Name == key
                       select n.Value;
            if(values.Any())
            {
                return values.First();
            }
            return null;
        }
        set
        {
            var document = XDocument.Load(ConfigurationFilePath);
            var values = from n in document.Root.Elements()
                       where n.Name == key
                       select n;
            if(values.Any())
            {
                values.First().Value = value;
            }
            else
            {
                document.Root.Add(new XElement(key, value));
            }
            document.Save(ConfigurationFilePath);
        }
    }
}

シングルトン クラスを介してConfigurationを呼び出すため、.NET 開発者にとっては app.config ファイルを使用するのと非常によく似ています。最も効率的なソリューションではないかもしれませんが、仕事は完了します。

于 2013-01-31T13:40:44.940 に答える
0

イトノア

おそらくPCLAppConfigapp.configは、Xamarin.Forms PCL プロジェクトまたは他の Xamarin プロジェクトでの作成と読み取りに役立ちます。

リリースやデバッグなど、さまざまなビルド モードでさまざまな構成を行うには、構成変換を on で使用できますapp.config

于 2016-07-22T12:48:50.950 に答える