我正在尝试使用ASP将JSON数据获取到jQuery变量中。NET(而不是MVC):
$(document).ready(function () {
$('#calendar').fullCalendar({
events: GetEvents(start, end) //This line is invalid
}
}
在MVC中,它可以只是events: "/Calendar/GetEvents/"
,它将调用CalendarController的GetEvents()-方法。
但由于我不使用MVC,我开始按照本指南尝试从客户端调用服务器端方法。
在第二步中,它告诉我必须创建一个静态方法才能做到这一点:
[System.Web.Services.WebMethod]
public static string Message()
{
return "Hello from the server-side World!";
}
但我需要能够访问方法中的非静态变量,如Session[]
,所以我真的看不出这种方法是如何工作的。
有没有更好的方法可以从不涉及直接服务器端调用的aspx.cs-方法中提取JSON数据?或者有没有一种方法可以让我使用我不知道的会话
不要直接调用Session,而是使用HttpContext。现在的会话,或使其成为页面中的静态属性:
private static HttpSessionState MySession
{
get
{
return HttpContext.Current.Session;
}
set
{
return HttpContext.Current.Session = value;
}
}