我試圖通過名稱從數組中獲取值。這樣做的目的是將這些參數發送到SSRS和事務查詢。按名稱從數組中獲取值
我有一個XML類型的parameterValue:
'report paramerters
Dim parametersTransactional(3) As ParameterValue
parametersTransactional(0) = New ParameterValue()
parametersTransactional(0).Name = "StartDate"
parametersTransactional(0).Value = "2012-01-01T00:00:00"
parametersTransactional(1) = New ParameterValue()
parametersTransactional(1).Name = "EndDate"
parametersTransactional(1).Value = "2012-06-01T00:00:00"
parametersTransactional(2) = New ParameterValue()
parametersTransactional(2).Name = CustomersCustomerLocation"
parametersTransactional(2).Value = "1, 2, 3, 4, 5"
我想我能得到一個名字的索引,然後得到這樣的價值;
Dim startDate As String = "StartDate"
Dim idxStartDate As Integer = Array.IndexOf(parameters, startDate)
或者這樣:
Dim start2 As Integer = parameters.FindIndex(startDate)
的parameterValue的類型爲:
'''<remarks/>
<System.CodeDom.Compiler.GeneratedCodeAttribute("System.Xml", "4.0.30319.17929"), _
System.SerializableAttribute(), _
System.Diagnostics.DebuggerStepThroughAttribute(), _
System.ComponentModel.DesignerCategoryAttribute("code"), _
System.Xml.Serialization.XmlTypeAttribute([Namespace]:="http://schemas.microsoft.com/sqlserver/2005/06/30/reporting/reportingservices")> _
Partial Public Class ParameterValue
Inherits ParameterValueOrFieldReference
Private nameField As String
Private valueField As String
Private labelField As String
'''<remarks/>
Public Property Name() As String
Get
Return Me.nameField
End Get
Set
Me.nameField = value
End Set
End Property
'''<remarks/>
Public Property Value() As String
Get
Return Me.valueField
End Get
Set
Me.valueField = value
End Set
End Property
'''<remarks/>
Public Property Label() As String
Get
Return Me.labelField
End Get
Set
Me.labelField = value
End Set
End Property
末級
所以我錯過了一些關鍵的一步。
聽起來像你想要一個字典,而不是一個數組? – crashmstr
@ crashmstr我可以。 ParameterValue是我可以發送給SSRS的值。我也想將這些值提取到單個參數中以用於事務性查詢。我應該通過ParameterValue循環並將值放在字典中? – BClaydon