إنشاء متعدد الأبعاد hashtable مع الأدوية في VB ASP.NET?

StackOverflow https://stackoverflow.com/questions/133887

  •  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)
مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top