c# - 需要通过在c#中循环列表来创建自定义对象是否可能
问题描述
我需要根据键值对列表动态创建一个列表对象,但我无法通过循环列表来分配对象中的键值。
foreach (KeyValuePair<string, IEnumerable<string>> item in List)
{
string keyValue = item.Key.ToString();
object value = new { item.Key = item.Value };
somefunction(value);
}
item.key 会抛出问题。关于如何在列表中循环创建对象的任何建议。
例如,如果项目值为 { key: "sampleKey" , value : "sampleValue"} 我需要创建一个对象为 { "sampleKey" = "sampleValue" }。我怎样才能做到这一点。
解决方案
您可以使用 dynamic 关键字和 ExpandoObject ( https://docs.microsoft.com/en-us/dotnet/api/system.dynamic.expandoobject?view=net-5.0 )做一些事情,但如果你是关键如此动态,我根本看不到将它们放在类/对象中的意义。而是将数据存储为字典,然后您也可以从字符串中检索数据。
推荐阅读
- react-native - 滑动手势不会在 React-Navigation 中打开/关闭抽屉
- android - 如何在反应原生屏幕之间传递数据?
- jboss - Wildfly 模块线程安全
- python - 如何使用 Python 连接到 Tor 浏览器
- c - 使用 cryptoauthlib 配置 ATEC608A
- robotframework - RIDE 的 Robotframework 运行问题
- c# - 无法在 Windows 10 版本的 NavigationView 的项目模板中实现相同的行为
- java - 为什么Java需要cmd /c或者cmd /k来执行多段adb
- css - 产品页面woocomerce上的文件图标不会消失
- python-3.x - 如何使用python将xml标签转换为字典?