【问题标题】:Kendo Scheduler - Event not showing剑道调度程序 - 事件未显示
【发布时间】:2016-02-19 14:48:26
【问题描述】:

我正在尝试在 Kendo Scheduler 中显示事件,但它不起作用。我认为这是因为来自服务器的 JSON 日期格式的格式不正确。任何帮助表示赞赏。

@(Html.Kendo().Scheduler<TaskViewModel>()
.Name("Scheduler")
.Date(DateTime.Today)
.Views(views =>
{
    views.DayView();
    views.WeekView();
    views.MonthView();
})
.Timezone("Etc/UTC")
.DataSource(d => d
    .Model(m =>
    {
        m.Field(f => f.Title);
        m.Field(f => f.Start);
        m.Field(f => f.End);
        m.Field(f => f.IsAllDay); 
    })
.Read(read => read.Action("GetScheduleEvent", "DataSource"))
)
)

JSON 响应

[{"RecurrenceRule":null,
  "RecurrenceException":null,
  "IsAllDay":true,
  "Start":"\/Date(1455775200000)\/",
  "StartTimezone":null,
  "End":"\/Date(1456034400000)\/",
  "EndTimezone":null,
  "Title":"Test Event"
}]

【问题讨论】:

  • 你的标记是什么样子的(即这个视图是如何渲染成 html 的)?
  • 我没有看到任何数据。

标签: javascript json kendo-ui kendo-asp.net-mvc kendo-scheduler


【解决方案1】:

@Ram:日期格式没有问题。您的 JSON 响应格式不正确。应该是这种格式

{"Data":[],"Total":55,"AggregateResults":null,"Errors":null}

我猜你可能忘记调用 ToDataSourceResult 方法,如下所示

public virtual JsonResult Read([DataSourceRequest] DataSourceRequest request)
        {
            return Json(taskService.GetAll().ToDataSourceResult(request));
        }

在您的 JSON 响应的帮助下,我创建了原始 JsonData。下面是我用于测试的代码 sn-p,它正在工作。希望对你有帮助!!

public ContentResult GetScheduleEvent([DataSourceRequest] DataSourceRequest request)
        {
            //string jsonString = "{\"Data\":[{\"RecurrenceRule\":null, \"RecurrenceException\":null,  \"IsAllDay\":false,  \"Start\":\"Sat Feb 20 2016 01:17:07 GMT-0700 (PDT)\",  \"StartTimezone\":null,  \"End\":\"Sat Feb 20 2016 04:17:07 GMT-0700 (PDT)\",  \"EndTimezone\":null,  \"Title\":\"Test Event\"}],\"Total\":1,\"AggregateResults\":null,\"Errors\":null}";
            string jsonString = "{\"Data\":[{\"RecurrenceRule\":null, \"RecurrenceException\":null,  \"IsAllDay\":true,  \"Start\":\"\\/Date(1455775200000)\\/\",  \"StartTimezone\":null,  \"End\":\"\\/Date(1456034400000)\\/\",  \"EndTimezone\":null,  \"Title\":\"Test Event\"}],\"Total\":1,\"AggregateResults\":null,\"Errors\":null}";
            return new ContentResult { Content = jsonString, ContentType = "application/json" };
        }

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2015-05-18
    • 2013-07-30
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多