我有一个开发,我制作了一个 Com dll 来与 Centura SQLBase 进行通信:
COM DLL Code
adaptor.SelectCommand() = New SQLBaseCommand("SELECT COMPANY_ID,COMPANY_NAME FROM COMPANY", myConnection)
Dim ds = New DataSet()
adaptor.Fill(ds, "COMPANY")
Dim myArray As New ArrayList
For Each row As DataRow In ds.Tables(0).Rows
myArray.Add(row)
Next
MsgBox(myArray(1).Item(0)) //This shows 102
MsgBox(myArray(1).Item(1)) //This shows Maui Mu-Mus
Return myArray
myArray
存储正确的值也是如此;但是在我的 MVC 控制器中,我得到了一个有 23 行的数组列表(这很好),但它们都是空的。
这是我的Controller Code GET: /Gupta/GetCiudades
Function GetCiudades() As JsonResult
Dim objConn As Object
objConn = Server.CreateObject("TestGupta.ComClass1")
Dim ciudadJson As ArrayList = objConn.getCompanies()
Return Json(ciudadJson, JsonRequestBehavior.AllowGet)
End Function
Ajax Code
:
$.getJSON("Gupta/GetCiudades", null, function (ciudades) {
ciudades = (JSON.stringify(ciudades));
console.log(ciudades);
});
console.log Result:
[{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{},{}]
问题是:如果在 com 对象中显示正确的值,那么为什么在控制器中的行是空的?