I have seen the demo where you are using SignalR and entity framework to bind to a Kendo scheduler. I have tried using this but have all sorts of problems.
- I am using a Edit Template with Kendo drop downs (the data for the drop downs are in Resources section but don't bind - I raised this as a separate question.
- I have a number of extra fields in my model. When I click to edit only the standard fields Title, Start End are bound all others have no data
Is there a way to use Linq rather than EF as I'm more familiar with this?
This is my schedular initialisation code...
////initialise scheduler$("#scheduler").kendoScheduler({ date: Date.now(), timezone: "Europe/London", workDayStart: new Date("2013/1/1 08:00 AM"), workDayEnd: new Date("2013/1/1 8:00 PM"), dateHeaderTemplate: kendo.template("<strong>#=kendo.toString(date, 'ddd dd/M')#</strong>"), selectable: true, messages: { ariaSlotLabel: "Selected from {0:g} to {0:g}", showWorkDay: "Show core work hours" }, editable: { window: { title: "Work Request", width: "720px" }, template: $("#customEditorTemplate").html() }, height: 400, views: [ { type: "day", editable: { destroy: false } }, { type: "week", editable: { destroy: false }, eventHeight: 40 }, { type: "timeline", editable: { destroy: false }, eventHeight: 40 }, { type: "timelineWeek", selected: true, majorTick: 1440, minorTickCount: 1, editable: { destroy: false }, eventHeight: 40 }, { type: "agenda" }, { type: "month", editable: { destroy: false }, eventHeight: 40 } ], timezone: "Etc/UTC", dataSource: { type: "signalr", push: function (e) { var notification = $("#notification").data("kendoNotification"); notification.success(e.type); }, transport: { signalr: { hub: sHub, promise: sHubStart, server: { read: "read", create: "create", update: "update", destroy: "destroy" }, client: { read: "read", create: "create", update: "update", destroy: "destroy" } } }, schema: { model: { id: "wRequestID", fields: { wRequestId: { editable: false, from: "WRequestID", type: "number", defaultValue: 0 }, start: { from: "Start", type: "date", culture: "en-GB" }, end: { from: "End", type: "date", culture: "en-GB" }, diary: { from: "Diary", type: "object", defaultValue: "UIS" }, team: { from: "Team", type: "object" }, title: { from: "Title", type: "string", validation: { required: true } }, workManager: { from: "WorkManager", type: "object" }, assignee: { from: "Assignee", type: "object" }, changeRef: { from: "ChangeRef", type: "string", validation: { required: true } }, activity: { from: "Activity", type: "string", validation: { required: true } }, impactedServers: { from: "ImpactedServers", type: "string", validation: { required: true } }, impactedServices: { from: "ImpactedServices", type: "string", validation: { required: true } }, isBAU: { from: "IsBAU", type: "boolean", defaultValue: false }, projectRef: { from: "ProjectRef", type: "string", validation: { required: true } }, notes: { from: "Notes", type: "string" }, isOOH: { from: "IsOOH", type: "boolean", defaultValue: false }, isAllDay: { from: "IsAllDay", type: "boolean", defaultValue: false }, recurrenceRule: { from: "RecurrenceRule", type: "string" }, recurrenceId: { from: "RecurrenceID", type: "number" }, recurrenceException: { from: "RecurrenceException", type: "string" }, startTimezone: { from: "StartTimezone", type: "string" }, endTimezone: { from: "EndTimezone", type: "string" } } }, }, }, resources: [ { field: "team", dataSource: [ { text: "Team 1", value: "Team 1", color: "#f8a398" }, { text: "Team 2", value: "Team 2", color: "#51a0ed" }, { text: "Team 3", value: "Team 3", color: "#56ca85" } ], title: "Team" }, { field: "workManager", dataSource: [ { text: "Manager 1", value: "12345", color: "#f8a398" }, { text: "Manager 2", value: "23456", color: "#51a0ed" }, { text: "Manager 3", value: "34567", color: "#56ca85" } ], title: "Work Manager", }, { field: "assignee", dataSource: [ { text: "Alex", value: "12345", color: "#f8a398" }, { text: "Bob", value: "23456", color: "#51a0ed" }, { text: "Charlie", value: "34567", color: "#56ca85" } ], title: "Assigned To" } ], edit: function(e) { var container = e.container; /* ACTION: ADD custom button */ var newButton = $('<a class="k-button" href="#">New button</a>'); //wire its click event newButton.click(function(e) { alert("Clicked"); }); //add the button to the container var buttonsContainer = container.find(".k-edit-buttons"); buttonsContainer.append(newButton); }});