0
我有此JSON
Array
表示3條記錄迭代通過的webmethod JSON陣列用vb.net
{"Data":[{"RecID":2383,"PrtStatus":true},{"RecID":3387,"PrtStatus":true},{"RecID":3388,"PrtStatus":true}]}
和我米試圖來遍歷它的對象。我內置了下面的類爲它
Public Class TblRegJoindata
Dim p_RecID As Integer
Dim p_status As Boolean
Public Property RecID As Integer
Get
Return p_RecID
End Get
Set(ByVal value As Integer)
p_RecID = value
End Set
End Property
Public Property PrtStatus As Boolean
Get
Return p_status
End Get
Set(ByVal value As Boolean)
p_status = value
End Set
End Property
End Class
在我的網站我的方法可以訪問數據,但通過他們不能想出一個辦法來循環,並將其儲存
<WebMethod> _
Public Function TblRegJoinUpd3(ByVal Data As List(Of TblRegJoindata))
Dim x As Integer = Data(0).RecID
End Function
我試圖做的是這樣的事情,我試圖實現它,但不允許使用「長度」屬性
For i As Integer = 0 To Data.Length - 1
cmd.Parameters.Clear()
cmd.Parameters.Add("@RecID", SqlDbType.Int).Value = Convert.ToInt32(i)
cmd.Parameters.Add("@PrtStatus", SqlDbType.Bit).Value = Boolean.Parse((i))
cmd.ExecuteNonQuery()
Next
更新
<WebMethod> _
Public Function TblRegJoinUpd3(ByVal Data As List(Of TblRegJoindata))
Dim constr As String = ConfigurationManager.ConnectionStrings("ARTSQLConStrng").ConnectionString
Using con As New SqlConnection(constr)
Using cmd As New SqlCommand("TblRegjoinUpdRec", con)
cmd.CommandType = CommandType.StoredProcedure
con.Open()
For i As Integer = 0 To Data.Count - 1
cmd.Parameters.Clear()
cmd.Parameters.Add("@RecID", SqlDbType.Int).Value = Convert.ToInt32(Data(i).RecID)
cmd.Parameters.Add("@PrtStatus", SqlDbType.Bit).Value = Boolean.Parse(Data(i).PrtStatus)
cmd.ExecuteNonQuery()
Next
con.Close()
End Using
End Using
Return (Data.Count)
返回data.count只是用於測試目的
您需要使用計數屬性而不是長度。 'Data.Count'。 –
@Chetan Ranpariya ,,,我試過這個測試,,,公共函數TblRegJoinUpd3(BYVAL數據爲列表(的TblRegJoindata)) 對於我作爲Integer = 0到Data.Count - 1 返回數據(i).PrtStatus Next End Function ,,,,,我只得到第一個值而不是三個,,, – JSON
您是否調試過並檢查Data的數量是多少?循環執行3次?你可以更新你的代碼在問題和expalin什麼不工作,以及如何不工作?預計如何工作? –