Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/277.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/list/4.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#_List_Dynamic - Fatal编程技术网

C# 列表<;动态>;不返回结构

C# 列表<;动态>;不返回结构,c#,list,dynamic,C#,List,Dynamic,我有一个列表类型的公共属性 正在使用列表中相同类型的对象填充此属性。我正在使用第三方报告工具根据此属性返回的数据设计报告 当列表对象包含数据时,我能够看到设计报表所需的属性/结构。然而,当没有数据时,我看不到创建报告布局的任何属性 任何帮助都将不胜感激 谢谢你的帮助。嗯,这显然是真的动态属性在运行时进行评估。如果没有数据可以显示,就无法知道什么类型的对象、结构或其他任何东西将实际放入其中。因此,反射此时无法确定有关类型的任何内容。(我不必说在动态类型上使用反射一开始就很危险,因为该类型可以在没有

我有一个列表类型的公共属性

正在使用列表中相同类型的对象填充此属性。我正在使用第三方报告工具根据此属性返回的数据设计报告

当列表对象包含数据时,我能够看到设计报表所需的属性/结构。然而,当没有数据时,我看不到创建报告布局的任何属性

任何帮助都将不胜感激


谢谢你的帮助。

嗯,这显然是真的<代码>动态属性在运行时进行评估。如果没有数据可以显示,就无法知道什么类型的对象、结构或其他任何东西将实际放入其中。因此,反射此时无法确定有关类型的任何内容。(我不必说在
动态
类型上使用反射一开始就很危险,因为该类型可以在没有任何警告的情况下随时更改。)


解决方案是确保始终存在数据,以便反射可以确定所提供数据的类型,或者最好根本不使用
动态

如果您可以给出一个示例来显示您正在尝试实现的目标和您的期望,这会有所帮助。如果没有可用的数据,您希望在哪里可以看到结构?你是如何确定结构的?当我看到使用
动态
时,10次中有9次,这是另一个需要解决的问题的糟糕解决方案。如果列表为空,则不存在任何信息,你需要将非动态的内容列成一个列表,或者在列表中至少添加一个元素,或者找出一种与查看列表本身完全不同的获取元数据的方法。当没有任何元素可以从中获取数据时,您希望您的头是什么样子的?什么是“默认”-元数据?投票结束,因为不清楚。