I am trying to convince my boss to use ExtJS as the one page GUI for our workflow application rewrite
We are tied in to using the clients application software
This means we will be going with ASP.NET 3.5 and SQL2008
Some of the data for example that needs to be displayed and be updateable can on occasions amount to 100 form items.
He asked was there any examples or did I know of any case studies that have used this technology suite with ExtJS. I said I didn't know of any examples publicised but I would ask on the forums
The application currently needs to support about 500 concurrent users as well.
Would anyone be able to share any gotchas or best practices if we go with this approach
Is there anything we really should be doing or should be avoiding?
All thoughts are greatly appreciated on this - even if its pointer on where to do a bit more research
Thanks
Andy
ExtJS works extremely well with ASP.NET MVC, so I would recommend going down that route. The performance with 100 form items will mostly depend on the browser you've having to support. IE6 always sucks, anything else is better. The JSON payload itself would be pretty small.
I started on a small sample using ExtJS with ASP.NET MVC and Linq. You can check out the fun I had with Dynamic Linq here.
I have used ExtJS for a large Java application using the Spring Framework. It is very much up to the task. ASP.NET MVC would be even easier to implement. The server-side piece is pretty straight forward. I've found getting up to speed with ExtJS to be a much larger intellectual challenge then writing the backend controllers and DB code.
I use ASP.Net, but I do not use MVC. Ext works great. I used ASP.Net (non-MVC) by-the-book for several years. That version of ASP.Net does not scale well in terms of maintenance or usability.
I now use ASP.Net merely as a transparent conduit to my business layer. I allow ASP.Net to handle session and authentication (which it does very well).
I use the one-page website model, which Ext excels at.
I use ASP.Net, but I do not use MVC. That version of ASP.Net does not scale well in terms of maintenance or usability.
Not sure what you're referring to here, but .Net scales well and maintainability issues are usually caused by poor programming standards.
I have worked on several ASP.Net apps for a Fortune 50 company with large numbers of users, including cases where thousands of them all start that app and incur startup load, in a short timespan, without issues. This was running in a farm with only 2 web and app servers. Conversely, I've seen .Net apps running with 40+ servers that still have issues.
Thanks for getting back to me
I am afraid we are working in a bank so they are still using IE6 with no sign of upgrading
I guess they have got more to worry about than upgrading their browsers at the moment
We also have the option of using MVC and Workflow Foundation and hopefully ExtJS
Did you leave all the presentational side to ExtJS?
Only data was sent to the ExtJS UI and from their you let ExtJS render and place the data?
If we use this approach I guess this is about the best separation of UI code from other application layers
One of the things I was thinking about would be that it would improve team productivity as we could have resources working without too much delay on the extJs UI - that will be me with any luck and the big boys working on the application/workflow logic and integration with the other systems?
@tim - Read your post as well you make it sound very easy
Do you know if there are any downloadable examples of ExtJS and MVC?
I would suggest searching the forums. There are a number of threads discussing Ext and .Net, some with links to examples. Also there are some other threads discussing Ext and MVC (not necessarily .Net) and where exactly the 'M', 'V', and 'C' pieces logically fall when combining the 2.
Not sure what you're referring to here, but .Net scales well and maintainability issues are usually caused by poor programming standards.
Hey Tim,
I agree .Net performance scales VERY well. I'm referring to the by-the-book ASP.Net practices and the maintenance involved when developing with those practices. It's easy to get a simple app up and running very quickly, but going back and maintaining can quickly become a nightmare. I seriously doubt my ASP.Net code could have improved much more.
At the time, the company I was with actually ran my app (which was fairly large) through a Microsoft Lab. Microsoft was impressed with the diligent code practices. When I asked how I could reduce the maintenance overhead, they just scratched their heads. A couple guys suggested third-party toolkits. We had already tried Infragistics. Telerix just looked like more of the same. Besides I was already looking at YUI and what would eventually become ExtJS.
Honestly, requiring 10-50 lines of XML for a grid is simply too much. Coding validators and data-sources in XML is simply stupid. At the time, these types of development practices were prone to typos and poorly worded exceptions (I don't know if much has improved). Even though JavaScript isn't compile-time checked (which is another big complaint of XML), I've found it much easier to maintain.
Introducing new developers to JavaScript and the Ext API has been much easier when compared to ASP.Net. New developers had a hard time understanding the ASP.Net Control Lifecycle and the functional difference between using XML and code-behind. (Q: If I set a property in XML does it overwrite the property that I set in Code-Behind? A: It depends.)
Perhaps ASP.Net MVC has solved these problems, but I left before it got released. I keep meaning to return and learn ASP.Net MVC, but it simply isn't a priority. And honestly, the fiasco of ASP.Net AJAX is enough to convince me to stay away for a little while longer.