使用 Linq 从动态字段中获取价值
Get value from dynamic field with Linq
我有一个对象列表。我想获取动态字段中的所有值。
我解释更多。我阅读了动态对象的所有属性。当我找到一个图像字段时,我想获取我的对象列表中的所有图像。
For Each col In Ret.StructTbl.LstCol
If col.EstImage Then
col.Liste = GetType(List(Of Eleve)).GetProperty(col.SQLName).GetValue(Ret.LstDatas.LstObj, Nothing)
End If
Next
我使用它 (vb.net),但我
La référence d'objet n'est pas définie à une instance d'un objet
我觉得是我有空值还是我走错路了?
这是filter and sorter dynamic null value
的关注者
我的十一结构
Public Class Eleve
<TableFullOption.TFOAttribute("Key")> Property Id As Integer
<TableFullOption.TFOAttribute("Image")> Property Img As String
Property Name As String
Property Major As Boolean
<TableFullOption.TFOAttribute("FK_Sexe")> Property Sex As Integer
Property English As Nullable(Of Integer)
Property Japanese As Nullable(Of Double)
Property Calculus As Decimal
Property Geometry As Integer
End Class
和col.SQLName="Img"
你能帮帮我吗...
我想列出我拥有的所有图像 (mypicture.jpg, img1.png ...)
此 GetProperty()
语句 returns Nothing
因为 属性 名称未在类型 List(T)
上找到。
GetType(List(Of Eleve)).GetProperty(col.SQLName) = Nothing ' true
下次调用 GetValue()
时会引发异常,因为您实际上是在对空引用调用方法。
Nothing.GetValue(...)
您是否打算改为在类型 Eleve
上查找 属性?
GetType(Eleve).GetProperty(col.SQLName)
我发现...
首先我创建一个智能函数
Public Shared Function GetColumn(Of MaClass As Class)(ByVal items As List(Of MaClass), ByVal columnName As String) As List(Of String)
Return items.Select(Function(x) If(x.GetType().GetProperty(columnName).GetValue(x, Nothing), String.Empty).ToString).ToList
End Function
我也喜欢
For Each col In Ret.StructTbl.LstCol
If col.EstImage Then
col.Liste = GetColumn(Of Eleve)(Ret.LstDatas.LstObj, col.SQLName)
End If
Next
我有一个对象列表。我想获取动态字段中的所有值。 我解释更多。我阅读了动态对象的所有属性。当我找到一个图像字段时,我想获取我的对象列表中的所有图像。
For Each col In Ret.StructTbl.LstCol
If col.EstImage Then
col.Liste = GetType(List(Of Eleve)).GetProperty(col.SQLName).GetValue(Ret.LstDatas.LstObj, Nothing)
End If
Next
我使用它 (vb.net),但我
La référence d'objet n'est pas définie à une instance d'un objet
我觉得是我有空值还是我走错路了? 这是filter and sorter dynamic null value
的关注者我的十一结构
Public Class Eleve
<TableFullOption.TFOAttribute("Key")> Property Id As Integer
<TableFullOption.TFOAttribute("Image")> Property Img As String
Property Name As String
Property Major As Boolean
<TableFullOption.TFOAttribute("FK_Sexe")> Property Sex As Integer
Property English As Nullable(Of Integer)
Property Japanese As Nullable(Of Double)
Property Calculus As Decimal
Property Geometry As Integer
End Class
和col.SQLName="Img"
你能帮帮我吗... 我想列出我拥有的所有图像 (mypicture.jpg, img1.png ...)
此 GetProperty()
语句 returns Nothing
因为 属性 名称未在类型 List(T)
上找到。
GetType(List(Of Eleve)).GetProperty(col.SQLName) = Nothing ' true
下次调用 GetValue()
时会引发异常,因为您实际上是在对空引用调用方法。
Nothing.GetValue(...)
您是否打算改为在类型 Eleve
上查找 属性?
GetType(Eleve).GetProperty(col.SQLName)
我发现... 首先我创建一个智能函数
Public Shared Function GetColumn(Of MaClass As Class)(ByVal items As List(Of MaClass), ByVal columnName As String) As List(Of String)
Return items.Select(Function(x) If(x.GetType().GetProperty(columnName).GetValue(x, Nothing), String.Empty).ToString).ToList
End Function
我也喜欢
For Each col In Ret.StructTbl.LstCol
If col.EstImage Then
col.Liste = GetColumn(Of Eleve)(Ret.LstDatas.LstObj, col.SQLName)
End If
Next