我试图找出将单个键/值对属性附加到枚举的最佳方法,其中键是我的MerchantId并且值是相应的TransactionKey。
我目前所做的是将逗号分隔的字符串放入一个StringValueAttribute
类中:
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.GetStringValue().Split(","c)(0)
:
Public ReadOnly Property MerchantId() As String
Get
Return Merchant.GetStringValue().Split(","c)(0)
End Get
End Property
我通过调用
提取值或TransactionKey.GetStringValue().Split(","c)(1)
:
Public ReadOnly Property TransactionKey() As String
Get
Return Merchant.GetStringValue().Split(","c)(1)
End Get
End Property
这是最有效的方法吗?代替StringValueAttribute
,使用 a 创建属性怎么样,Dictionary(Of String, String)
因为它是一个键/值对列表?还是字符串数组或列表?也许在 LINQ 中有什么?还是它已经尽可能高效了?