为什么它没有从 WEB 服务以完整日历呈现事件

本文关键字:日历 事件 服务 WEB 为什么 | 更新日期: 2023-09-27 18:32:16

//My web-service method WebService1.asmx
[WebMethod]    
[ScriptMethod]    
public string GetAllEvents()    
{    
    var list = new List<string>();
    list.Add("[{'"id'":'"36'"title'":'"Birthday party'",'"start'":'"2013-09-18'",'"end'":'"2013-09-18'",'"allDay'":false}]");
    JavaScriptSerializer jss = new JavaScriptSerializer();
    string strJSON = jss.Serialize(list.ToArray());
     return strJSON;
}
//My jQuery snippet
$("#fullcalendar").fullCalendar({
eventSources: 
[    
  {         
     url: "http://localhost:49322/WebService1.asmx/GetAllEvents",         
     type: 'POST',         
     dataType: "json",         
     contentType: "application/json; charset=utf-8",         
 }    
]    
});

为什么它没有从 WEB 服务以完整日历呈现事件

你走错了路。

  • 不要使用字符串操作手动形成 json 字符串(与你的情况一样,它是一个无效的 json)。
  • 不要从 Web 方法返回字符串,返回真实对象

它应该是这样的:

[WebMethod]
[ScriptMethod(ResponseFormat = ResponseFormat.Json)]
public List<Event> GetAllEvents()
{
    List<Event> events = .......
    ..fill the list....
    return evetns;
}

public class Event
{
    public int id { get; set; }
    public string title { get; set; }
    public string start { get; set; }
    public string end { get; set; }
    public bool allDay { get; set; }
}