【发布时间】:2014-03-28 14:23:42
【问题描述】:
我有一个从 C#-WebMethod 获取数据的 javascript 应用程序。 WebMethod 返回一个对象列表。 obect 的类具有静态属性,我将在 javascript 中读取此属性。该代码可能更好地解释了这个问题:
班级:
public class DayEntryBT{
public static string date { get; set; }
public string name { get; set; }
//some more...
}
网络方法:
[WebMethod]
public List<DayEntryBT> getDayEntries()
{
List<DayEntryBT> listOfEntries = new List<DayEntryBT>();
//some sql...
while (reader.Read()){
DayEntryBT day = new DayEntryBT();
DayEntryBT.date = reader["date"];
day.name = reader["name"];
listOfEntries.add(day);
}
return listOfEntries;
}
还有 Javascript:
$.ajax({
type: "POST",
url: "DataProviderBT.asmx/getDayEntries",
contentType: "application/json; charset=utf-8",
dataType: "json",
success: function (resp) {
alert(resp.d.date); //HOW TO GET THE STATIC ATTRIBUTE date HERE??????
alert(resp.d[0].name); //THIS WORKS!!!
}
});
如何从 javascript 中获取和设置静态属性的值?
问候
【问题讨论】:
-
我建议你找个提琴手看看返回数据是什么样子的,这样你就可以更好地理解它。
-
你的
d是一个数组,因为你返回的是一个List,你为什么不通过数组表示法访问它? -
我可以通过循环访问每个元素,但我不能像 resp.d[0].date 那样访问静态属性
-
你用什么将列表编码为 json?它是否编码静态变量?显示返回的 json 示例。
-
为什么在你的 webmethod 代码中使用
date不是静态字段?
标签: c# javascript web-services asmx webmethod