2011-10-03 65 views
0

我取回我的事件与web服务:Fullcalendar在ASP.NET和JSON REPONSE

 Public Function webGetCalendarEvents(ByVal startDate As String, ByVal endDate As String) As String 
     Dim sDate As DateTime = ToUnixTimeSpan(startDate) 
     Dim eDate As DateTime = ToUnixTimeSpan(endDate) 
     Dim DS As DataSet = DBStoredProcedures.GetEventsCalendarJSON(95, sDate, eDate) 
     DS.Tables(0).TableName = "events" 
     Dim dataTable As DataTable = DS.Tables(0) 
     Dim jsonEvents As String = Newtonsoft.Json.JsonConvert.SerializeObject(dataTable) 
Return jsonEvents 

JSON响应是这样的:

[ 
    { 
     "id":589311, 
     "title":"My Title", 
     "priority":"", 
     "start":"2011-09-19T08:00", 
     "end":"2011-09-26T16:00", 
     "allDay":"false", 
     "editable":"true", 
     "EOSid":0 
    } 
] 

的问题是,我所有的事件都显示为allDay事件。似乎“allDay”的“虚假”价值不被认可。

我评估fullcalendar.js文件中的响应(1.5.2版,围绕981线):

success: function (events) { 
         events = (typeof events.d) == 'string' ? eval('(' + events.d + ')') : events.d || []; 

我怎样才能使事件接受“阿迪”参数?

谢谢。

回答

0

求助: 我改变了我的SQL程序,我正在生成“allDay”参数。我改变来自:

CASE WHEN EventTypeID=3 THEN 'false' ELSE 'true' END as allDay 

到:

CASE WHEN EventTypeID=3 THEN CAST(0 as BIT) ELSE CAST(1 as BIT) END as allDay 

这给了我JSON响应:代替

{"allDay": false} 

{"allDay": "false"}