vb.net中的动态命名变量

vb.net中的动态命名变量,vb.net,Vb.net,我想做的是能够获取键值对的字典,并使键成为变量的名称,值成为值。 从网上搜索,似乎很模糊这是否可能 PHP中的等效项为: foreach($key=>$val的数组) { $$key=$val; } 谢谢。这是可行的,但操作缓慢。您必须使用通过字符串表示访问变量 如果可能的话,使用泛型将对象本身存储为键会快得多。在这本书中有一个例子。这样做意味着在运行时不需要强制转换或反射。此外,它还允许intellisense直接处理集合,这是泛型的另一个很棒的功能。这是可行的,但操作速度很慢。您必须使用通过

我想做的是能够获取键值对的字典,并使键成为变量的名称,值成为值。 从网上搜索,似乎很模糊这是否可能

PHP中的等效项为:

foreach($key=>$val的数组) { $$key=$val; }


谢谢。

这是可行的,但操作缓慢。您必须使用通过字符串表示访问变量


如果可能的话,使用泛型将对象本身存储为键会快得多。在这本书中有一个例子。这样做意味着在运行时不需要强制转换或反射。此外,它还允许intellisense直接处理集合,这是泛型的另一个很棒的功能。

这是可行的,但操作速度很慢。您必须使用通过字符串表示访问变量


如果可能的话,使用泛型将对象本身存储为键会快得多。在这本书中有一个例子。这样做意味着在运行时不需要强制转换或反射。此外,它还允许intellisense直接处理集合,这是泛型的另一个很棒的功能。

您必须在编译时用.Net CLR语言(不要与.Net动态运行时语言混淆)声明变量。除此之外,如果您还知道变量的类型,通常会更好。Net程序员通常认为(链接是C#,但内容仍然适用)


您希望如何处理这些变量?告诉我们,我敢打赌我们可以为您提供更好的方法来完成同样的事情。

您必须在编译时用.Net CLR语言(不要与.Net动态运行时语言混淆)声明变量。除此之外,如果您还知道变量的类型,通常会更好。Net程序员通常认为(链接是C#,但内容仍然适用)


您希望如何处理这些变量?告诉我们,我敢打赌我们可以给你一个更好的方法来完成同样的事情。

目的是什么?这些键本质上充当动态变量名来访问已经存在的值。目的是什么?键基本上充当动态变量名来访问已经存在的值。基本上,我考虑的是silverlight数据网格,我的理解是,不能将数组/列表/字典ect绑定到一组列,因此我认为,与其使用外观难看的开关将代码中的每个值转换为命名变量,不如动态执行。我仍然需要更多地了解您的网格和字典中的对象类型看起来像网格中的每一列是否对应于字典中记录中的属性或字段(或多个属性或字段的转换)?我没有使用silverlight,但如果我知道你可以将其绑定到winforms或asp.net网格控件。我绕过了它,其实一点都不麻烦,所以我不会为了稍微干净的代码而让它更混乱,谢谢你的帮助。基本上我是从silverlight datagrid的角度考虑的,我的理解是,不能将数组/列表/字典ect绑定到一组列,因此我认为,与其使用外观难看的开关将代码中的每个值转换为命名变量,不如动态执行。我仍然需要更多地了解您的网格和字典中的对象类型看起来像网格中的每一列是否对应于字典中记录中的属性或字段(或多个属性或字段的转换)?我没有使用silverlight,但如果是这样的话,我知道你可以将它绑定到winforms或asp.net网格控件。我绕过了它,其实一点都不麻烦,所以为了代码稍微干净一点,我不会费心让它更混乱,谢谢你的帮助。