إنشاء متعدد الأبعاد hashtable مع الأدوية في VB ASP.NET?
-
02-07-2019 - |
سؤال
أنا بحاجة إلى إنشاء متعدد الأبعاد (متداخلة) hashtable/قاموس بحيث يمكنني استخدام بناء الجملة مثل
val = myHash("Key").("key")
وأنا أعلم أنني بحاجة إلى استخدام الأدوية ولكن أنا لا يمكن معرفة بناء الجملة الصحيح باستخدام VB في ASP.NET 2.0, هناك الكثير من c# الأمثلة على الشبكة ولكنها لا تساعد كثيرا.
هتاف!
المحلول
حسنا, أنا أفضل في C# من vb.net ولكن سأعطيك هذا الذهاب....
Dim myHash as Dictionary(Of string, Dictionary(Of string, Integer));
نصائح أخرى
هناك أيضا النظام.مجموعات.المتخصصة.StringDictionary(T) جمع الذي هو مجرد محددة مسبقا القاموس(من سلسلة T).
و جملة إلى استخدام إما طبيعية القاموس أو StringDictionary تبدو مثل هذا:
val = myHash("key")("key")
ليس مثل هذا:
val = myHash("key").("key")
نعتبر أن كنت قد تحتاج فقط إلى استخدام القاموس ، و التي يمكن أن يؤلف الخاصة بك متعددة المفاتيح في مفتاح واحد كائن مع مركب رمز التجزئة.E. g.جعل multikey الطبقة ثم استخدامه بمثابة المفتاح.
في شبة الكود:
class Multikey {
private keys;
public setKey1(...)
public setKey2(...)
}
Dim myKey as MultiKey(...)
myKey.key1 = ...
myKey.key2 = ...
Dim mydic as Dictionary(Of MultiKey, Integer)
val = mydic(myKey)