Integrating MVC3 into an existing Classic ASP application - asp.net-mvc-3

We have a very large application written in classic ASP. The application consists of a single codebase which is accessed by multiple tenants, each of which has their own database. The application has been developed over a number of years.
Initially we were going to write a new application in MVC3 which would take over from this application, and eventually migrate customers to this new application.
We are now wondering if it is viable to add to the existing application gradually using code written in MVC3. At some point, we would expect the whole application to be running in MVC3 with no classic ASP left. The application would have to act as a single application, with one login giving access to the existing classic asp parts of the system as well as the new parts written in MVC3.
Does anyone have experience of doing this? What issues are we likely to face? Are there any pitfalls we should look out for?

I am in the process of completing a (painful and long) migration from a Classic ASP site to MVC3.
I looked at running both side-by-side in detail because this is a large ecommerce website I have migrated and it would have been beneficial.
The issues I came across and which eventually led me to abandon this option are as follows:
If you have URL rewriting on your Classic ASP website then it is
likely going to interfere with ASP.NET MVC routing
Authentication is going to be very difficult because of the way
authCookies are set in both technologies
In my case both of these points were show-stoppers.
Saying that, there have been some interesting developments in the open source arena since I started that try to tackle the issue of migrating Classic ASP sites to MVC.
Specifically, you might want to take a look at the ASP Classic Compiler on codeplex. It looks promising.

Related

Legacy Access application of 30-40 forms , asp.net web matrix or web forms?

I've been tasked with converting a legacy Access application over to a .net framework solution as quickly as possible.I'm unsure which approach approach to go for. I prefer asp.net web pages with web matrix as I'm comfortable in this environment but not sure if its the correct approach/best tool for the job. I know that web forms is good for grid based screens which this access application uses rather heavily.
I will be using SQL Server for the backend.
Has anyone moved an access application over to a .net framework solution before? If so what approach do you recommend? ASP.net Webpages Web matrix or Web forms? Something else?
Thanks
D
If you are more comfortable with Web Pages, then use that. I have been playing with Web Pages and Knockoutjs recently. That might be a good combination: http://www.mikesdotnetting.com/Article/190/Using-Knockout-With-Razor-Web-Pages-In-WebMatrix-2

Is webmatrix appropriate for a "private" web app?

I would like to build a web interface for an app I build for a client. The app itself is made with Access for the front-end, and SQL Server for the database.
The idea is to allow them to check the stock of an item, or see the orders of a client using a laptop or even a smartphone, while on the road.
I have a basic experience with html and CSS, since I made a few simple sites.
My question is: would webmatrix be a good choice for that job ?
Since I master VBA and SQL quite well, and the client is a MS environment anyway, I thought webmatrix could be an easy path for that project.
Any feedback appreciated. Other suggestions are welcome. Thanks.
We have a very similar environment. We have a legacy application developed in Microsoft Access running against SQL Server 2005. Initially we developed a single page website using WebMatrix that had some key data displayed on it. Over time, it's grown to having maybe 30 pages, with both employees and customers logging in to it. It's my plan to gradually replace the Access application completely with a WebMatrix application.
Generally, the WebMatrix development enviromnent is quite competent for simple pages and I like its lightweight quick-to-boot easy-to-use approach. On some of the more complicated pages that use c# classes, I will switch to Visual Studio.
Since you have some experience with HTML and CSS, then I think the razor syntax that WebMatrix uses is a natural progression. If your only language experience has been vba, you might have some challenge using c# or perhaps vb.net. I would recommend c# as being more of an standard.
Good luck!

Converter from other syntax to ASP.NET MVC

My knowledge is in ASP.NET MVC C#, SQL Server 2005/2008 R2, SQL Server Business Intelligence Studio and Crystal Reports. I would like to extend my knowledge to work on existing customers CRM /CMS applications who perhaps used different syntax, such as Drupal, php, C++ or Oracle. Who need an update in uniqueness. Could someone kindly tell me where I can find resources for this kind of information? In general terms, of course. I Had a look at MVC Framework for existing application, for reference. Also http://www.asp.net/downloads/archived-v11/migration-assistants/php-to-aspnet, but this is for ASP.NET1 not MVC.
If there is no tool out there for ASP.NET MVC C# converter is there alternative way? I have not come from ASP.NET, Straight to MVC
Thanks
Converting code is generally an ugly process which ends up with you having to do a lot manually. And that assumes that you are converting from/to languages that are at least being used in the same paradigm; in-line server-side scripting in PHP to in-line, server-side 'scripting' in ASP.NET, for example.
But ASP.NET MVC is a completely different paradigm for developing a web application. There really is not any useful way to 'convert' an application from in-line, scripted PHP to ASP.NET MVC; You would just end up with "views" that are just ASPX pages with in-line code, not all of which could even be converted in the first place.
Even trying to go from a different MVC web framework to ASP.NET MVC would likely be near-impossible to do completely, as different things are separated in different places.
So much of MVC is about architecting the application "properly" from the start. Trying to automatically convert things would really mess with that.

MVC3 - lightweight CMS that can be added to existing application?

I'm trying to find a CMS that can be incorporated into an existing MVC3 app.
I've played with N2, and can't get the damn thing to work in VS2010 or with .NET 4.
Umbarco doesn't appear to support MVC yet
Orchard looks great, but wants to own the whole application.
DNN is just a mess.
Any other brilliant solutions?
Post-mortem Dec 2011
This is an old post, but I thought I'd share my experiences with Orchard, and why I decided to go a different direction.
NHibernate
Aside from the very large number of transactions per page (literally dozens in some cases), each and every query was executed using sp_executesql. While not quite as bad as using Exec(), this rubs me the wrong way. Currently, my database is locked down so that applications can only execute stored procedures - that is, they can't perform select/update/delete, list entities such as tables, get any metadata, etc. This is a requirement for tier-wise unit testing, compile-time verification of the database, security and encapsulation of database logic from the application code.
Source Deployment
Orchard requires that the entire source for your site (views, .cs source files, etc) is deployed to the production server. The sheer number of source files that need to deployed boggles the mind.
Integration with an existing application
The manner in which Orchard is structured effectively requires it to be the point of entry for the web application. This means that you're going to spend some time modifying and reimplementing your app to get it to play nice with Orchard.
Conclusion
There were quite a few other issues that I encountered, but those are the highlights. Individually, each of those could have been a deal breaker. Together, they removed Orchard as a viable solution.
I'm now evaluating Telerik's Sitefinity. It's not MVC, which saddens me, but:
The admin interface is extremely powerful. Aside from a master page and some stylesheets that I put together in VS, we've been able to handle all of the layout via Sitefinity's admin tools.
I mean, it's really powerful. You can use the admin interface to edit the admin interface. Think about that for a minute.
Widgets are implemented as ASP.NET user controls. Most of my existing controls just dropped right in with zero modifications.
Database access is handled via Telerik's OpenAccess ORM. While Sitefinity doesn't natively use stored procedures, OpenAccess fully supports using them for all operations. Also, according to Telerik, OpenAccess does not, in any way, rely on reflection, which provides significant performance benefits in heavy-load apps.
There are several solutions available for using Razor markup within widgets, which is one of the great benefits (to me) of using MVC. Also, I've been told that native Razor support is in active development.
It's not free. In reality, however, a few grand barely breaks the noise floor in terms of development time.
Super crazy fast. Startup time is a bit on the slow side, but once it's running, it's very quick.
Built on top of Telerik's awesome, proven RAD controls.
Apologies for the long post. Hopefully this will be helpful.
You might find these projects useful. You can probably model a simple CMS based on one of their projects.
MvcCms
MvcMS
Atomic CMS
Mytrip.mvc
Try Web Noodles..The new CMS developed using mvc3. WebNoodles.It is easy to integrate .But the thing is it is still in beta stage..But you must give it a try ...

Silverlight 4 Business Application or ASP.NET MVC 2?

Wondering whether it is advisable to develop web applications under the "Silverlight 4 Business Application" template or under the "ASP.NET MVC 2 web application" template.
In any case, what are the PROS and CONS?
Thank you.
IMHO, I think a web application is better off being developed using MVC2. Silverlight has and is coming a long way, but to my knowledge, is largely still client-side (please correct me if wrong anyone). As such, I think MVC2 is a better platform because you're leveraging your web server to process all the work and not bogging down processes client-side. I liken this to why we do certain things server-side vs. in JQuery/Javascript. It's mostly because the server has the speed, capacity and ability to process the user experience in the best way possible.
MVC2 has come a long way since MVC1. I would definitely support use of MVC2 in any new ASP.NET web applications over webforms. There are trade-offs, especially if you cut your teeth on Webforms like I did :)
Overall, best bet for the future is MVC2 as we're still seeing a lot of advances in Silverlight, and not sure it's finished growing.
HTH,
Sid

Resources