私はArcGIS IFeatureオブジェクトを取得して簡単に設定するために必要なプロパティを持つクラスでワーピングしています。 基本的には、getおよびset操作はfeature.get_value(index)
とfeature.set_value(indes, value)
を使用し、強く型付けされた値を公開します。
私はアプリケーション全体で共通のプロパティを表すためにドメイン(基本的にはIDictionary<string, object>
)を使用するいくつかのフィールドを持っています。
私はラッピングクラスでドメインのキー(通常のint値)のみを使用し、ToString()
メソッドでドメインを使用して、UIの文字列に変換すると考えました。
後でアプリケーションの文字列を使用することができます(実際のドメインフィールドはほとんどの場合ヌル文字を渡すことが容易になります)。GetDomainValue(index)
とSetDomainValue(index, value)
を使用するようにこれらのフィールドのゲッターとセッターのみを変更します。キーと値の間の基底フィーチャオブジェクトへの変換を行います。値やキーを使うべきですか?
どのようなアプローチが良いと思いますか?私のクラスは値がどのように保存されているか気にしないので、ストリングのアプローチはもう少し「永続的な無知」であると考えました。 一方、コードがループを少しジャンプして、機能に含まれるものを返すのではなく、すべてのゲッターがドメインを反復処理する必要があります。
ええ、私はintを使いましたか?どこにでもアプローチすることができましたが、代わりにドメイン値を使用するようになりました。このようにして、呼び出しコードが無効な値をフィールドに入れようとしていないことを確認することもできます。 –