Der*_*erp -4 .net c# .net-4.0 deserialization
我正在研究.NET中的反序列化类,我必须开发一个方法,它为我提供了一个存储在字符串中的变量名.
我有一个字符串,如:
string string_name = "this_is_going_to_be_var_name";
Run Code Online (Sandbox Code Playgroud)
现在我该怎么做才能让我的代码动态声明一个名为this_is_going_to_be_var_name的变量?
因此要清理:将有一个反序列化类,它将根据高级程序员/用户的意愿,声明与作为输入提供的字符串相同的变量及其PARENT TYPES.
例如:在javascript/jQuery中,当我通过发出请求来获取JSON时,解释器声明具有相同名称的变量/数组并为它们赋值.如果{"var_name":"var_value"}是一个JSON字符串,则解释器将创建一个名为var_name的变量,并为其分配"var_value",例如json_data_object.var_name.
不,你不能.C#变量都是静态声明的.
您可以做的最好的事情是创建一个字典并使用键而不是变量名.
// Replace object with your own type
Dictionary<string, object> myDictionary = new Dictionary<string, object>();
myDictionary.Add("this_is_going_to_be_var_name", value_of_the_variable);
// ...
// This is equivalent to foo($this_is_going_to_be_var_name) in PHP
foo(myDictionary["this_is_going_to_be_var_name"]);
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
5708 次 |
最近记录: |