0

WindowsPhone用のアプリの開発を始めました。カスタムオブジェクトの配列を持つシングルトンオブジェクトを作成したいと思います。また、、などAddのカスタム関数も必要です。CheckIfExistsDelete

アプリを閉じるときにこの配列を保存し、アプリの起動時に配列をシングルトンにロードする必要があります。

誰かが私がすべきことを手伝ってくれますか?どこから始めればいいですか?

iOSプラットフォームではNSUserDefault、必要なキーを使用してオブジェクトを保存するために使用し、キーからロードします。

4

1 に答える 1

1

分離ストレージは、利用可能なオプションの 1 つにすぎません。

iOS の NSUserDefault の直接の機能的類似物はIsolatedStorageSettingsクラスです。キーによって値を保存/ロードするためのいくつかのヘルパー メソッドを抜粋したものを次に示します。

static T getValue<T>( string _propName )
{
    return getValue( _propName, default( T ) );
}

static T getValue<T>( string _propName, T _defaultValue )
{
    var iss = IsolatedStorageSettings.ApplicationSettings;
    T res;
    if( iss.TryGetValue( _propName, out res ) )
        return res;
    return _defaultValue;
}

static void setValue( string _propName, object val )
{
    IsolatedStorageSettings.ApplicationSettings[ _propName ] = val;
    IsolatedStorageSettings.ApplicationSettings.Save();
}

または、本格的な ORM + RDBMS を使用することもできます。iOS では、基礎となる SQLite で Core Data を使用します。WP7 では、基礎となる SQLCE で Entity Framework と呼ばれます。

3 つのソリューションにはすべて、長所と短所があります。データ サイズ (IsolatedStorageSettings にメガバイトのデータを保持しないなど) とデータ アクセス パターン (クエリが必要な場合、または DB の大部分をそのまま維持しながら小さな項目のみを挿入する場合など) に基づいて慎重に選択してください。SQL エンジンは高速化できます。桁違いに増加します)。

于 2013-01-29T10:55:25.627 に答える