相关疑难解决方法(0)

将字符串转换为变量名称

我有一个XML文件,我有一个节点,我读了所有ChildNodes.childNode的名称与我必须使用此childNode的值设置的变量匹配.

在循环中,我想设置:

  • myvar1到MyValue1
  • myvar2到MyValue2

C#代码:

protected string myvar1;
protected string myvar2;
Run Code Online (Sandbox Code Playgroud)

XML内容如下所示:

<parameters>
 <myvar1>MyValue1</myvar1>
 <myvar2>MyValue2</myvar2>
</parameters>
Run Code Online (Sandbox Code Playgroud)

C#设置变量:

    foreach (var item in xmlParamInstallation.SelectNodes("parameters")[0].ChildNodes)
    {
        ??????
    }
Run Code Online (Sandbox Code Playgroud)

任何的想法 ?

谢谢,

更新1: 循环中的值"field"始终为null.

public class ParametersTest
{
    public string myvar1 { get; set; }
    public string myvar2 {get; set;}
}

var type = typeof(ParametersTest);
foreach (XmlNode item in xmlParamInstallation.SelectNodes("parameters")[0].ChildNodes)
{

    var field = type.GetField(item.LocalName);
    field.SetValue(field, item.InnerText);
}
Run Code Online (Sandbox Code Playgroud)

c# xml reflection deserialization

8
推荐指数
2
解决办法
1万
查看次数

标签 统计

c# ×1

deserialization ×1

reflection ×1

xml ×1