Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/asp.net/29.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
GnU GPL v2 DHTMLX ASP.net C#-如何从类返回的数据库(JSON)读取数据_C#_Asp.net_Json_Scheduler_Dhtmlx - Fatal编程技术网

GnU GPL v2 DHTMLX ASP.net C#-如何从类返回的数据库(JSON)读取数据

GnU GPL v2 DHTMLX ASP.net C#-如何从类返回的数据库(JSON)读取数据,c#,asp.net,json,scheduler,dhtmlx,C#,Asp.net,Json,Scheduler,Dhtmlx,我读到我可以做这样的事情 scheduler.parse([ { start_date:"2013-05-13 6:00", end_date:"2009-05-13 8:00", text:"Event 1"}, { start_date:"2013-06-09 6:00", end_date:"2009-06-09 8:00", text:"Event 2"} ],"json"); 在 但我不想手动放置所有数据,我希望它从我的数据库中读取数据 所以我所做的就是在Data

我读到我可以做这样的事情

scheduler.parse([
     { start_date:"2013-05-13 6:00", end_date:"2009-05-13 8:00", text:"Event 1"},
     { start_date:"2013-06-09 6:00", end_date:"2009-06-09 8:00", text:"Event 2"}
],"json");

但我不想手动放置所有数据,我希望它从我的数据库中读取数据

所以我所做的就是在Data.ashx上使用这个方法

public string getJson(int ID)
        {
            XXXContext db = new XXXContext();
            var YYYY = db.Y.Where(p => p.YYYID == ID).Include(p => p.ZZZZ).ToList();
            List<CalendarEvent> cEvent = new List<CalendarEvent>();

            foreach (var evnt in YYYYY)
            {
                cEvent.Add(new CalendarEvent() { id = evnt.AAAAID, text = evnt.PPPPP.FirstName.ToString() + " " + evnt.PPPPP.MiddleName.ToString() + " " +  evnt.PPPPP.LastName.ToString() + "<br />" +
                    evnt.Reason.ToString() + "<br />" + evnt.Details.ToString(), start_date = evnt.XXXXXDateTime??DateTime.Now, end_date = evnt.XXXXXDateTime??DateTime.Now });
            }
            IEnumerable<CalendarEvent> toIEnum = cEvent;

            string json = new JavaScriptSerializer().Serialize(toIEnum);
            return json;
        }
公共字符串getJson(int-ID)
{
XXXContext db=新的XXXContext();
var YYYY=db.Y.Where(p=>p.YYYID==ID).Include(p=>p.ZZZZ.ToList();
List cEvent=新列表();
foreach(变量evnt,以YYYY为单位)
{
添加(新日历事件(){id=evnt.AAAAID,text=evnt.PPPPP.FirstName.ToString()+“”+evnt.PPPPP.MiddleName.ToString()+“”+evnt.ppppppp.LastName.ToString()+“
”+ evnt.Reason.ToString()+“
”+evnt.Details.ToString(),开始日期=evnt.XXXXX DateTime??DateTime.Now,结束日期=evnt.XXXXX DateTime??DateTime.Now}); } IEnumerable toIEnum=cEvent; string json=new JavaScriptSerializer().Serialize(toIEnum); 返回json; }
这将返回JSON格式的输出


但是我不知道下一步要做什么您需要在的参数中指定数据格式,否则默认情况下它将使用xml:

scheduler.load("../../Data.ashx", "json");
还请注意,客户端希望开始日期/结束日期以config中指定的格式进行序列化(%Y-%m-%d%H:%i“,根据您的代码),而JavaScriptSerializer将DateTime字符串化为以下内容:

"start_date": "/Date(1355496152000)/"
有两种可能的解决方法,例如,您可以覆盖解析日期的方法并手动解析日期:

scheduler.templates.xml_date = function (dateString) {
    var timestamp = dateString.substring(6, dateString.length - 2);
    return new Date(timestamp * 1);
};

scheduler.load("../../Data.ashx", "json");
scheduler.templates.xml_date = function (dateString) {
    var timestamp = dateString.substring(6, dateString.length - 2);
    return new Date(timestamp * 1);
};

scheduler.load("../../Data.ashx", "json");