如何在C#中动态命名变量?

Bra*_*don 9 c# variables dynamic-data

有没有办法动态命名变量?

我需要做的是从输入文件中获取变量名称列表,并使用这些名称创建变量.这可能吗?

就像是:

Variable <dynamic name of variable here> = new Variable(input);
Run Code Online (Sandbox Code Playgroud)

假设我已经处理了Variable类,并且变量的名称包含在一个名为的字符串中strLine.

Ben*_*igt 15

用一个Dictionary<string, Variable>.

例如

var vartable = new Dictionary<string, Variable>();
vartable[strLine] = new Variable(input);
Run Code Online (Sandbox Code Playgroud)


xan*_*tos 5

C# 4.0,使用dynamic对象:

dynamic d = new ExpandoObject();
((IDictionary<string, object>)d)["MyProperty"] =  5;
int val = d.MyProperty; // 5
Run Code Online (Sandbox Code Playgroud)