Our state of the art Gantt chart


Post by awakeb1 »

Please can you advise if possible to integrate Gantt 4.0.7 with asp.net, because all the example and sample related to Angular, React & Vue.
We have used in the past older version (Gant Ext 5.x) and now have obtained a new license for Gantt 4.0.7, so we need to migrate to the new Gantt 4.0.7. Is there a path or possibility to migrate? If yes please can you provide any link or documentation?


Post by Maxim Gorkovsky »

Hello.
You can consider our demos to be split into frontend and backend part, communicating with JSON. Angular/React/Vue demos are a front-end part. ASP.NET and PHP demos show how to implement a backend which is demonstrated with a simple client-side JS app.

Could you please elaborate on what do you expect from asp.net integration?

Is there a path or possibility to migrate

Please take a look to sheduler migration guide: https://bryntum.com/docs/scheduler/#guides/migration/extscheduler-to-bryntumscheduler.md
CRUD protocol structure hasn't changed, so it is all about JS app configuration. Config system is similar to one in ExtJS, there are similar concepts too: panels, widget type (xtype in ExtJS), layout, store, model, fields etc.

If you have any specific questions during migration, please don't hesitate to ask.


Post by awakeb1 »

Thanks, just as a follow-up question to validate the point above. With Gantt 4.0.7 can integrate with ASP.NET MVC? If yes, please could you please give me some information to archive that?


Post by awakeb1 »

Another point, you have reference to the Migration/Extscheduler-to-bryntumscheduler. But are we using Gantt, I though the are different product unless it's the same migration path. So the 2 main clarification to make sure we are not burning more time and effort on Gantt 4.0.7 and if we have to go back to Gantt Ext.Js 6.x as following:

  1. If we can integrate with asp.net MVC (If yes) please can you provide more details.
  2. If know then we have to upgrade from the old Gantt Ext.Js 4.x to 6.x and change our license again.

Thanks


Post by Maxim Gorkovsky »

you have reference to the Migration/Extscheduler-to-bryntumscheduler. But are we using Gantt, I though the are different product unless it's the same migration path

Migration path is very similar, yes. Gantt is based on scheduler and migration procedure wouldn't be much different. Guide explains main concepts which are applicable to Gantt too.

If we can integrate with asp.net MVC (If yes) please can you provide more details.

To run Gantt app all you need is a webpage where you load the JS app and backend to return/process data. We demonstrate this in our aspnet demo which you can find in the distribution folder. So yes, you can integrate Gantt with aspnet.
If you need specific details, please ask specific questions.

If know then we have to upgrade from the old Gantt Ext.Js 4.x to 6.x and change our license again.

This depends on your requirements of course.
Migrating from ExtGantt4 to ExtGantt6 should be much easier than to Bryntum Gantt, which doesn't rely on extjs at all. But ExtGantt6 is not in the active development phase, we support it and fix problems but do not add new features.
Bryntum Gantt on the other hand has almost complete feature parity with ExtGantt, is more performant and is being actively developed now. For new applications we recommend to use Bryntum Gantt.


Post by awakeb1 »

Hi,

I'm trying to create another project ASP.NET MVC in your example aspnet, I called it BryntumGanttDemo (please see the attachment project structure below):

  • Controller folder contains 2:
    + MainController: contains two action is TaskIndex and TaskTempIndex. these actions will return razor view corresponding.
    + GanttCrudController: contains logic CRUD. (I kept this controller the same with example aspnet).
  • Scripts folder: contains bryntum folder, has 2 scripts of gantt inside is task & tasktemp folder (because in our projects have 2 places apply gantt)
  • Views folder: contains 2 views:
    + Views/Main/TaskIndex.cshtml: this view will use gantt script inside task folder
    + Views/Main/TaskTempIndex.cshtml: this view will use gantt script inside tasktemp folder

I configured route by default will return controller is Main and action is TaskIndex if URL doesn't pass controller & action.

Here are my questions:

  1. Existing our project used ASP.NET MVC with pure javascript. we don't separate backend and fontend as your example. Can I integrate Bryntum 4.0.7?
  2. If yes, please advice me more details or help me how to fix the error I explained above.
Attachments
Project structure & default route configuration
Project structure & default route configuration
project structure and route configure.png (52.55 KiB) Viewed 1766 times
URL Worked (didn't pass controller & action)
URL Worked (didn't pass controller & action)
url worked.PNG (141.66 KiB) Viewed 1766 times
Url not worked
Url not worked
url not worked 2.PNG (88.33 KiB) Viewed 1766 times

Post by Maxim Gorkovsky »

It looks like you have wrong configuration for project load url, it should be smth like:

project : {
  transport : {
    load : { url  : '/ganttcrud/load' } // it should start with a slash specifying global URL
  }
}

Post by awakeb1 »

Hi,

I am sure that I kept the project load url as it, because all are from aspnet example. The difference between my demo and your demo are the way apply. My demo is implemented by asp.net MVC and your is separate backend and frontend.

I can give you my demo app, if you want.


Post by Maxim Gorkovsky »

Long story short, your controller is handling host:port/ganttcrud/load and project is sending request to host:port/Main/ganttcrud/load. Which is what it should do if you configure load url like ganttcrud/load. Which is why you should configure load url to be /ganttcrud/load.

Please post your project config.


Post by awakeb1 »

But both URL are the same, please take a look at the first picture about default route configuration in my MVC.
https://localhost:52864 and https://localhost:52864/Main/TaskIndex are the same. So if first URL worked, then second URL have to work as well.


Post Reply