我试图使该功能返回(列表/ multidarray)7个BranchHours.childnodes的这个branchID我可以在我的代码隐藏页一点点代码调用XML元素。故障返回所有的字符串列表循环函数
这里是什么XMLFILE的一个部分看起来像(BranchesInfo)
<BranchInfo>
<BranchId>db</BranchId>
<Name></Name>
<ShortName></ShortName>
<ImageUrl></ImageUrl>
<BranchHours>
<Hours>
<DayOfWeek>Sunday</DayOfWeek>
<Open>12:00</Open>
<Close>5:00</Close>
</Hours>
<Hours>
<DayOfWeek>Monday</DayOfWeek>
<Open>10:00</Open>
<Close>8:00</Close>
</Hours>
<Hours>
<DayOfWeek>Tuesday</DayOfWeek>
<Open>10:00</Open>
<Close>8:00</Close>
</Hours>
<Hours>
<DayOfWeek>Wednesday</DayOfWeek>
<Open>10:00</Open>
<Close>8:00</Close>
</Hours>
<Hours>
<DayOfWeek>Thursday</DayOfWeek>
<Open>10:00</Open>
<Close>6:00</Close>
</Hours>
<Hours>
<DayOfWeek>Friday</DayOfWeek>
<Open>10:00</Open>
<Close>6:00</Close>
</Hours>
<Hours>
<DayOfWeek>Saturday</DayOfWeek>
<Open>12:00</Open>
<Close>5:00</Close>
</Hours>
</BranchHours>
</BranchInfo>
代码
'app_code function below
Public Shared Function MyFunc(ByVal branchCode As String) As List(Of String)
Dim URLString As String = "url/branchesTesting.xml"
Dim xmlDoc As XDocument = XDocument.Parse(URLString)
XDocument.Load(URLString)
Dim labelMan As List(Of String)
Dim x As Integer = (0) 'looping variable
' Dim i As Integer = 1
Dim branchid = xmlDoc.XPathSelectElements("/BranchesInfo/BranchInfo[BranchId='" & branchCode & "']/BranchHours/Hours")
'Dim varList As New List(Of String)
Dim Items = From BranchHours In xmlDoc.XPathSelectElements("/BranchesInfo/BranchInfo[BranchId='" & branchCode & "']/BranchHours/Hours") _
Select DayOfWeek = (BranchHours.Elements("DayOfWeek").Value),
Open = (BranchHours.Elements("Open").Value), _
Close = (BranchHours.Elements("Close").Value)
' Dim lists = xmlDoc.Root.Elements("BranchHours").[Select](Function(element) element.Value).ToList()
For Each Hours In Items
' For i As Integer = 0 To Items.Count - 1
' lists = labelMan
labelMan = "<div>DayOfWeek:" & Hours.DayOfWeek & "Open:" & Hours.Open & "Close: " & Hours.Close & "</div>" ' ----- error Error 34 Value of type 'String' cannot be converted to 'System.Collections.Generic.List(Of String)'.
' Else
' i += 1
' End If
labelMan = labelMan
'Next
Next
' If labelMan = "" Then
'labelMan = "No Results."
'End If
Return labelMan
End Fuction
Public Sub Page_Load(sender As Object, e As EventArgs) Handles Me.Load
Call BranchHours.branchHours.MyFunc("dr")
Label1.Text = BranchHours.branchHours.MyFunc("dr") ' ----- Error Error 35 Value of type 'System.Collections.Generic.List(Of String)' cannot be converted to 'String'.
End Sub
理想的效果
Day of the Week Open Close
(0)Sunday 12:00 5:00
(1)Monday 10:00 8:00
(2)Tuesday 10:00 8:00
(3)Wednesday 10:00 8:00
(4)Thursday 10:00 6:00
(5)Friday 10:00 6:00
(6)Saturday 10:00 5:00
---第(i)不会在未来可以参考其结果。
请让我知道如果你需要任何额外的信息。谢谢!
你没告诉我们MyFunc'是如何'声明,但它看起来像它期待一个'清单(串)'作为参数,你传递一个'String'(“DR”), – Blackwood
MYFUNC声明在我的app_code文件夹中 - 纠正我,如果我错了,但它期待一个字符串(“dr”),并期待返回值为来自retrun labelMan的List(字符串)?公共共享功能MYFUNC(BYVAL branchCode作为字符串)作为目录(串),并在网页的“代码”公共小组的Page_Load(发送者为对象,E作为EventArgs的)背后说我的代码处理Me.Load 呼叫BranchHours.branchHours.MyFunc(” dr“) Label1.Text = BranchHours.branchHours.MyFunc(”dr“) - 从类型'List(Of String)'转换为类型'String'无效。 结束小组 – DJN