Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/326.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# 如何在KeyValuePair列表中获取对象的值_C#_Keyvaluepair - Fatal编程技术网

C# 如何在KeyValuePair列表中获取对象的值

C# 如何在KeyValuePair列表中获取对象的值,c#,keyvaluepair,C#,Keyvaluepair,var list=newlist(){} 我想从列表中找到接口IObject的实际值。我该怎么做 您可以循环浏览列表项并打印其值: foreach(var item in list) { Console.WriteLine(item.Value); } 取决于要打印的内容。如果IOObject在例如Info()方法中返回它的值,那么它应该如下所示 foreach (var kvp in list) { Console.WriteLine(kvp.Value.Info()); }

var list=newlist(){}


我想从列表中找到接口IObject的实际值。我该怎么做

您可以循环浏览列表项并打印其值:

foreach(var item in list)
{
    Console.WriteLine(item.Value);
}

取决于要打印的内容。如果IOObject在例如Info()方法中返回它的值,那么它应该如下所示

foreach (var kvp in list)
{
    Console.WriteLine(kvp.Value.Info());
}

这可能会解决OPs问题,如果
IObject
还包含一些
ToString
,我猜这是OPs的实际问题-只是一个猜测。
object
类型实现
ToString
,所以它会打印一些东西;-)当然会的。但如果这有意义,那是另一个问题。很可能OP会得到类似于
MyNamespace.MyObject
的内容。实际上,在我针对接口对象类型的情况下,字符串只是其中一种类型。您已经尝试了什么?关于获取某些数据的字符串表示形式,有数百个问题。
Info
-方法?你是如何得出可能存在这样的结论的?一个
ToString
会不会给我一个更可行的假设?IOObject是一个接口,那么我假设它正在实现一些返回其“值”的方法。我认为我们正在实现,这将有所帮助。有没有一种方法可以在不循环的情况下访问IOObject的单个值?当然,您需要指定列表的索引。例如,如果要访问列表的第一个元素,则代码如下所示:list[0].Value.Info();