How to migrate from the ASP.NET MVC (Classic) to the ASP.NET MVC?
There is no direct way for the Essential Studio 12.3 version to migrate from the ASP.NET (Classic) platform to ASP.NET MVC currently, as the controls do not share the same API. So, you have to manually map the equivalent function and properties in the new controls.
In the new ASP.NET, there is no separate DLL for every control, such as, Syncfusion.Schedule.Mvc.dll and Syncfusion.Tools.Web.dll, rather you can use Syncfusion.EJ.MVC.dll and Syncfusion.EJ.dll that are common for all the controls.
Step 1: Remove the Syncfusion.Schedule.Mvc.dll, Syncfusion.Shared.Mvc.dll, and other DLLs used by the ASP.NET MVC (classic).
Step 2: Remove the namespaces from the web.config also.
Step 3: Refer to the Syncfusion.EJ.MVC.dll and Syncfusion.EJ.dll in the project.
The following table lists the required Namespaces, DLLs, script, and CSS files to work with the ASP.Net MVC control.
DLLs required | Syncfusion.EJ.dll Syncfusion.EJ.MVC.dll Syncfusion.Core.dll (not required when you are using the version after 13.2) |
Namespaces | Syncfusion.MVC.EJ Syncfusion.JavaScript |
Script files | Syncfusion script files: ej.web.all.min.js External Script files: jquery.min.js jquery.easing.min.js jquery.globalize.min.js jsrender.min.js |
CSS files | ej.web.all.min.css |
Note: When the UnobtrusiveJavaScriptEnabled is set to true in the web.config, include the ej.unobtrusive.min.js file in the _Layout.cshtml page.
Web.config
<appSettings> <add key="webpages:Version" value="2.0.0.0" /> <add key="webpages:Enabled" value="false" /> <add key="PreserveLoginUrl" value="true" /> <add key="ClientValidationEnabled" value="true" /> <!--Sets the UnobtrusiveJavaScriptEnable property to false in the web.config page-->. <add key="UnobtrusiveJavaScriptEnabled" value="false" /> </appSettings> |
Add the script manager render code to the end of the body tag in the layout.cshtml page as it is mandatory to render the EJMVC Schedule control. This is demonstrated in the following code example.
Layout.cshtml
<body> ---------------- ---------------- @Scripts.Render("~/bundles/bootstrap") @RenderSection("scripts", required: false) @Html.EJ().ScriptManager() </body>
You can find the scripts and CSS files in the following locations.
CSS Location: <Installed location>\Syncfusion\Essential Studio\XX.X.X.XX\JavaScript\assets\css\web
(For example: C:\Program Files (x86)\Syncfusion\Essential Studio\XX.X.X.XX\JavaScript\assets\css\web)
Script Location: <Installed location>\Syncfusion\Essential Studio\XX.X.X.XX\JavaScript\assets\scripts\web
(For example: C:\Program Files (x86)\Syncfusion\Essential Studio\XX.X.X.XX\JavaScript\assets\scripts\web)
DLL Location: <Installed location>\Syncfusion\Essential Studio\XX.X.X.XX\Assemblies
(For example: C:\Program Files (x86)\Syncfusion\Essential Studio\XX.X.X.XX\Assemblies)
Note: The XX.X.X.XX denotes the version of the assemblies.
The CDN links available for the scripts and CSS files can also be referred.
CDN Link : http://docs.syncfusion.com/js/cdn
Dependencies Link : http://docs.syncfusion.com/js/dependencies
In order to create an application in the ASP.NET MVC (latest), and configure the settings manually, refer to the following link.
http://www.syncfusion.com/kb/3606/how-to-add-the-ejmvc-schedule-control-in-the-mvc-application
Refer to the following links for more information on the ASP.NET MVC Schedule controls.
Getting Started with the MVC Schedule control: http://docs.syncfusion.com/aspnetmvc/schedule/getting-started
For your convenience, a getting started video of the ASP.NET MVC Schedule control is created and the same can be downloaded from Video Link: aspmvc.zip
In the v11.4.0.26, the project template is created, by default; but, for the v12.3.0.36, you need to install the MVC extension separately to make use of the project template in the Visual Studio.
MVC Extension Download Link: http://www.syncfusion.com/downloads/extension/v12.3.0.36
For more information on the Schedule features that available in the ASP.NET MVC, refer to:
Online Sample Link: http://mvc.syncfusion.com/demos/web/Schedule/Default
API Documentation Link: http://docs.syncfusion.com/js/api/ejschedule
The fields used in the Schedule for the Appointments, Resources, and Categorize that are migrated from the ASP.NET MVC (Classic) to the new ASP.NET MVC are as follows.
SchedulePropertiesModel Fields | |
ASP.NET MVC (Classic) | ASP.NET MVC |
ActionName | - |
AllowAddNew | ReadOnly |
AllowDelete | |
AllowEdit | |
AllowDragAndDrop | AllowDragDrop |
AllowInline | - |
AllowKeyboardNavigation | AllowKeyboardNavigation |
AllowMultipleResource | Resources -> AllowMultiple |
AllowPriority | - |
AllowRecurrence | - |
AllowReminder | ReminderSettings -> Enable |
AllowResize | EnableAppointmentResize |
AppointmentCategorize | - |
AppointmentCustomCss | - |
AppointmentTemplateName | AppointmentTemplateId |
AppointmentToolTipTemplate | - |
BindList | AppointmentSettings |
BlockTime | - |
BusinessEndHour | BusinessEndHour |
BusinessStartHour | BusinessStartHour |
- | CategorizeSettings |
CellHeight | CellHeight |
CellToolTipTemplate | - |
CellWidth | CellWidth |
- | ScheduleClientSideEvents |
ClientSideOnActionBegin | ActionBegin |
ClientSideOnActionFailure | - |
ClientSideOnActionSuccess | ActionComplete |
ClientSideOnAppointmentClick | AppointmentClick |
ClientSideOnAppointmentDoubleClick | AppointmentWindowOpen |
ClientSideOnAppointmentDragging | Drag |
ClientSideOnAppointmentDragStart | DragStart |
ClientSideOnAppointmentDragStop | DragStop |
ClientSideOnAppointmentSelection | - |
ClientSideOnCellDoubleClick | CellDoubleClick |
ClientSideOnCellSingleClick | CellClick |
- | CellHover |
ClientSideOnContextMenuBeforeOpen | BeforeContextMenuOpen |
ClientSideOnContextMenuClick | MenuItemClick |
ClientSideOnKeyDown | - |
ClientSideOnResourceCategoryCollapse | - |
ClientSideOnResourceCategortyExpand | - |
- | AppointmentDeleted |
- | AppointmentEdited |
- | AppointmentSaved |
- | AppointmentHover |
- | Create |
- | Navigation |
- | Reminder |
- | Resize |
- | ResizeStart |
- | ResizeStop |
ContextMenuItems | ContextMenuSettings |
CurrentDate | CurrentDate |
CurrentView | CurrentView |
CustomCSS | CssClass |
DataSource | AppointmentSettings -> DataSource |
DateFormat | DateFormat |
DateHeaderHeight | - |
DateHeaderTemplateName | - |
- | EnableAppointmentNavigation |
- | EnableLoadOnDemand |
- | EnablePersistance |
- | EnableRecurrenceValidation |
- | EnableRTL |
EnableClientSideEvents | - |
EndHour | EndHour |
ExportIcsContent | - |
FirstDayOfWeek | - |
- | Group (Resources) |
Height | Height |
HighlightBusinessHours | HighlightBusinessHours |
HighlightDateCSS | - |
HolidayList | - |
ImportActionName | - |
ImportedAppointments | - |
ImportFile | - |
ImportFilePath | - |
- | IsDST |
- | IsResponsive |
LocalizationPath | - |
Localize | Locale |
LocalizeFileName | - |
MaxDate | MaxDate |
MinDate | MinDate |
QueryCellInfo | - |
- | ReminderSettings |
- | RenderDates (Start, End) |
ResourceCategory | - |
ResourceCellWidth | - |
ResourceHeaderHeight | - |
ResourceHeaderTemplateName | ResourceHeaderTemplateId |
Resources | Resources |
ScheduleMode | Orientation |
- | ShowAllDayRow |
ShowAppointmentIndicator | - |
ShowCategorizeButton | - |
ShowContextMenu | ContextMenuSettings -> Enable |
ShowCurrentTime | ShowCurrentTimeIndicator |
ShowDayView | Views |
ShowMonthView | |
ShowWeekView | |
ShowWorkWeekView | |
ShowExport | - |
ShowHeaderBar | ShowHeaderBar |
ShowImport | - |
- | ShowLocationField |
ShowNavigationPane | - |
ShowPrint | - |
ShowReminderWindow | - |
ShowResourceHeader | - |
ShowTimeZonesButton | - |
ShowTodayView | - |
ShowToolBar | - |
ShowToolTip | - |
ShowWaitingPopup | - |
- | ShowQuickWindow |
- | ShowTimeScale |
Skins | - |
StartHour | StartHour |
TimeFormat | - |
TimeHeaderTemplateName | - |
TimeMode | TimeMode |
TimeScale | - |
TimeZone | TimeZone |
TimeZoneInfo | TimeZoneInfo |
Width | Width |
Appointment Setting Fields | |
ASP.NET MVC (Classic) | ASP.NET MVC |
IdField | Id |
SubjectField | Subject |
LocationField | Location |
StartTimeField | StartTime |
EndTimeField | EndTime |
DescriptionField | Description |
OwnerField | ResourceFields |
PriorityField | Priority |
RecurrenceField | Recurrence |
RecurrenceTypeField | - |
RecurrenceTypeCountField | - |
ReminderField | - |
AllDayField | AllDay |
RecurrenceStartField | - |
RecurrenceEndField | - |
RecurrenceRules | RecurrenceRule |
CategorizeField | Categorize |
CustomArgsField | - |
CustomStyleField | - |
- | DataSource |
- | Query |
- | TableName |
- | StartTimeZone |
- | EndTimeZone |
Resource Setting Fields | |
ASP.NET MVC (Classic) | ASP.NET MVC |
ResourceID | ID |
ResourceName | Text |
CategoryID | - |
ResourceAppointmentClass | AppointmentClass |
- | GroupId |
- | Color |
- | DataSource |
- | Query |
- | TableName |
CategorySettings Fields | |
ASP.NET MVC (Classic) | ASP.NET MVC |
- | ID |
- | Text |
- | Color |
- | FontColor |
- | AllowMultiple |
- | DataSource |
- | Enable |
- | Query |
- | TableName |
ResourcesFields | |
ASP.NET MVC (Classic) | ASP.NET MVC |
- | Field |
- | AllowMultiple |
- | Name |
- | ResourceSettings |
- | Title |
ContextMenuItem Fields | |
ASP.NET MVC (Classic) | ASP.NET MVC |
CommandName | - |
ContextMenuTarget | - |
ImageUrl | - |
MenuID | - |
MenuName | MenuItems |
OnClick | - |
- | Enable |
MenuItems Fields | |
ASP.NET MVC (Classic) | ASP.NET MVC |
- | Appointment (ID, ParentId, Text) |
- | Cells (ID, ParentId, Text) |
ReminderSettings Fields | |
ASP.NET MVC (Classic) | ASP.NET MVC |
- | AlertBefore |
- | Enable |
PrioritySettings Fields | |
ASP.NET MVC (Classic) | ASP.NET MVC |
- | DataSource |
- | Enable |
- | Template |
- | Text |
- | Value |
HolidayAppointment Fields | |
ASP.NET MVC (Classic) | ASP.NET MVC |
Date | - |
ID | - |
Location | - |
Subject | - |
ScheduleCell Fields | |
ASP.NET MVC (Classic) | ASP.NET MVC |
CellCategoryType | - |
CellType | - |
Date | - |
HtmlAttributes | - |
Overlap | - |
ResourceCategoryInfo | - |
ResourceInfo | - |
BlockTime Fields | |
ASP.NET MVC (Classic) | ASP.NET MVC |
BackColor | - |
Block | - |
CssClass | - |
Daily | - |
EndTime | - |
ID | - |
ResourceID | - |
StartTime | - |
Subject | - |