私は、キーが私のMerchantIdであり、値が対応するTransactionKeyである列挙に、単一のキー/値ペア属性を付けるための最良の方法を見つけようとしています。単一のキーと値のペア属性を列挙に追加する最も良い方法は何ですか?
私は現在StringValueAttribute
クラスにカンマ区切りの文字列を入れて何をすべきか:
Public ReadOnly Property MerchantId() As String
Get
Return Merchant.GetStringValue().Split(","c)(0)
End Get
End Property
を:.GetStringValue().Split(","c)(0)
を呼び出して
Public Enum Merchants
<StringValue("coke,faj80785hq+faf=-1=-jfa+">
Coke = 0
<StringValue("pepsi,adfji=-901jnas++fdj98ua")>
Pepsi = 1
<StringValue("drpepper,jk878-=+9kdkdja0=a=f--daj")>
DrPepper = 2
End Enum
Public Property Merchant As Merchants
は私がMerchantIdキーまたはを引き出します私は値を引き出すかTransactionKey.GetStringValue().Split(","c)(1)
呼び出し:
Public ReadOnly Property TransactionKey() As String
Get
Return Merchant.GetStringValue().Split(","c)(1)
End Get
End Property
が、これは、これを行うための最も効率的な方法ですか? StringValueAttribute
の代わりに、キー/値のペアリストであるため、Dictionary(Of String, String)
を使用して属性を作成するとどうなりますか?または文字列配列またはリスト?たぶんLINQの何か?それとも、すでに効率的なのですか?
素敵な仕事!キャッシングとすべて:) –
ありがとう:)私はこの種のことをかなりやっている自分自身を見つける... –
これはまさに私が参照していたように見えますが、私はそれがエラーなしでVBに変換するように見えることができません。 。これらのコンバータはLINQがまだ好きではありません。 '.Select'メソッドがないので、CacheMerchantsCacheの' .Select'パーツにはまっています。 GetMerchantAttributeの '.GetCustomAttributes'と同じことです。 –