Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/278.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 在C中向动态对象添加字典值#_C#_Reflection_Microsoft Dynamics - Fatal编程技术网

C# 在C中向动态对象添加字典值#

C# 在C中向动态对象添加字典值#,c#,reflection,microsoft-dynamics,C#,Reflection,Microsoft Dynamics,我有一个方法,它返回一个动态创建的对象,并希望添加字典的键作为该对象的动态属性和字典值​​作为价值观​​此新对象的属性。下面是方法,但我没有成功,有人帮我理解并这样做吗 *不是字典对象是具有值的对象​​字典的(键和值) public Object setObjectProperty(Dictionary<String, String> dictionary) { dynamic newObj = new ExpandoObject(); foreach (var w

我有一个方法,它返回一个动态创建的对象,并希望添加字典的键作为该对象的动态属性和字典值​​作为价值观​​此新对象的属性。下面是方法,但我没有成功,有人帮我理解并这样做吗

*不是字典对象是具有值的对象​​字典的(键和值)

public Object setObjectProperty(Dictionary<String, String> dictionary)
{
    dynamic newObj = new ExpandoObject();

    foreach (var word in dictionary)
    {
        newObj.word.Key = word.Value;
    }

    return (Object) newObj;
}
公共对象setObjectProperty(字典)
{
动态newObj=newexpandoobject();
foreach(字典中的var单词)
{
newObj.word.Key=word.Value;
}
返回(对象)newObj;
}

ExpandoObject
实现了
IDictionary
,但它显式地实现了这些方法。只需将其强制转换为该类型,然后您就可以访问
Add
方法:

public static Object setObjectProperty(Dictionary<String, String> dictionary)
{
    IDictionary<string, object> newObj = new ExpandoObject();

    foreach (var word in dictionary)
    {
        newObj.Add(word.Key, word.Value);
    }

    return newObj;
}
公共静态对象setObjectProperty(字典)
{
IDictionary newObj=新的ExpandoObject();
foreach(字典中的var单词)
{
newObj.Add(word.Key,word.Value);
}
返回newObj;
}