Who is using MVC?


So MVC have been out now for a while, and I have seen a few things come by my way with it.  I just wanted to see who all was using it and how it was working out for you.

I am really curious about things like:

  • Did you have to modify your project plans to fit MVC or did it do exactly what you wanted?
  • Have you run into any problems using MVC?
  • Are the documentation that explains when you use MVC clear?
  • How useful have you found the ability to use unit testing with your MVC site?

Look forward to hearing from everyone.  Feel free to share other things as well.  Iโ€™d like to hear any success or failures you have had with it.

Comments (43)

  1. C.T. says:

    Our web site is using MVC http://www.epegasus.com.cn

  2. Moran says:

    Hi, i started to  build a commercial site ,

    and i was just at the beginning , after i saw MVC,

    i  opened a new project and now i will build  the site with MVC in mind …

  3. Hi

    Currently I am not actually building anything with MVC but I am learning MVC by reading these blogs and watching videos. By working with Java technology it inspired me to learn ASP.NET MVC. I really like the idea behind MVC and it is not a new subject for me.

  4. .NET Dev Guy says:

    There is a lot of hype around ASP.NET MVC but there does not seem to be a lot of real world results.  The lead architect at my company has been using a custom ASP.NET MVC framework for new projects.  So far in this framework, every project has run over on time and the clients are not happy with the functionality of the sites.  

    Our ASP.NET webforms framework seems to be quicker to develop in as well as have better functional results.  I am not against MVC, I would just like to see some success stories before I invest my time into it.

  5. Joe Fiorini says:

    I’ve build a couple demo sites for presentations based on ASP.NET MVC. Many of my thoughts are documented on my blog. Microsoft is doing an impressive job listening to the community and making this a product for everyone. I definitely commend you on those efforts.

    As for documentation, it seems pretty complete. I have difficulty finding information/presecription on when (and how) to write custom route constraints.

    All in all, you guys are doing some excellent work in this space! Keep it up!

  6. Joe Fiorini says:

    @.NET Dev Guy:

    "…does not seem to be a lot of real world results"

    It’s still in beta, so no, there aren’t a lot of real world results. Be patient, they will come as the framework matures.

    "…webforms framework seems to be quicker to develop in"

    It’s always quicker to develop in what you are familiar with, it’s a matter of learning MVC as well as you know web forms when the benefits really come.

    Just my 2¢, completely unasked for :).

  7. Matt Brown says:

    I’m waiting until it is officially released. Why jump into building a site when MVC stuff is changing all of the time?!

    When it is officially released, I plan on sitting down and learning it. Exciting!

  8. Soeren says:

    Let’s not forget that asp.net MVC isn’t even in beta yet. In my opinion, it’s much to early to use this in enterprise solutions. Personally, I’m not going to develop anything until at least beta-release. Until then, I will read the blogs and tutorials, so that I understand the basics when time is. Can’t wait ๐Ÿ™‚

  9. Alex says:

    I have released 6 MVC websites. The only difficult part is when a new preview is released and things change.

    1. MVC was exactly what I wanted.

    2. Not too many problems other than when things change between previews (4 – 5)

    3. Yup

    4. Haven’t used unit testing so far.

  10. We are using ASP.NET MVC on our upcoming startup valid.net. MVC provided everything we really could have hoped for. We were looking for a much more flexible and customizable solution for our web app than traditional forms web apps provide. We are using lots of ajax to build a very quick and clean interface. For me, the MVC framework has made the UI experience much better. Collaboration with the engineers and the web people has been better also.

    The documentation for MVC has been adequate. We have relied mainly on the blogs (scottgu, etc.) for getting started information.

    We definitely utilized the unit testing. I have enjoyed the ability to really test out the "backend" of the website before the web dev and design team gets to work. This way there are no surprises for them and we are building a more stable product early on.

    I am still kind of unsatisfied with the partial rendering. I feel like in the recent previews have been a bit of a step back from before. I was playing around with the ComponentControllers before and I liked the idea. The initial implementation was a bit cumbersome, but I think the idea had merit. The partials in the latest preview are lacking for what I envision partial views to be. I would like to see some way to have completely separate partial views set in the pages. I would like to see some sort of partial view that doesnโ€™t depend on the full view or the controller for the model data. This way I could place these partials on various views of the site and have them be completely independent from the main controller and model.

  11. Hi, here is an example of a website I am building at this moment using MVC Framework:

    http://mytpi.naivn.biz (will be uploaded to http://www.mytpi.com soon)

    It’s a pleasure to work with this technology, really. Had no any problems with it.

  12. Another .NET Dev Guy says:

    Careful, you’ll offend the alt.net whiners – they take a black and white viewpoint towards their technology/religion of choice.  You are either for or against it.

    I find it amusing how some of them talk about webforms like they’ve been completely unablet to get projects out the door these last few years.

    I’m with you though, I need to see some real world success before I make a business case to change what works.

  13. Fred says:

    MVC is changing too much to invest real money in it.

    It *IS* worth learning from a conceptual stand point.  

    Once MVC becomes a *REAL* part of .Net (4.0 perhaps?) and not some (admittedly pleasant and fun to use) side-show, it’ll get more interest and you’ll see more real-world applications built using it.  

    For me specifically, since 99% of my work is done in SharePoint (MOSS, not WSS), I eagerly await Microsoft’s adoption "IN HOUSE* of MVC so I can freely use it for things like custom applications that use the SharePoint Businesss Data Catalog (BDC) to perform two-way query/updates of data that is surfaced within SharePoint by BDC.

    As long as MVC is and "island" and not integrated within Microsoft’s applications such as SharePoint, it will remain a pleasant curiosity (at least for me).

  14. Coder says:

    I’ve work with Jakarta Struts, the other MVC framework, and was not impressed. I don’t like the idea of placing server side tags on the web page like classic ASP spaghetti code. The fact that it’s more testable is not a good enough reason to go with MVC. I know there are other reasons, such as "Separation of Concerns", but ASP.NET is quicker to develop and have better functionality. You can also make a case that ASP.NET is more OO than MVC because each controls on the page is treated like an object with properties, methods, and events.

  15. Kambiz says:

    I’ve always had problems using usual web forms, maybe one of them was the code produced which was ugly and very big, producing 20KB of code for a small page for example. It made designing much easier, more control on the produced markup, at least for me.

    The most significant problem was hosting problems, as IIS doesn’t treat the virtual directory as a real application, which isn’t MVC’s problem, although it doesn’t make a big problem.

    I haven’t found any complete reference for MVC, forcing me to explore the features via team blogs, or reading the source code myself. That may be the reason it’s not much popular.

    I’ve ported an existing webforms project to an MVC one for my university, and I’m very happy with the results at reg.shahedrobotic.ir (which is in my native language).

  16. scott says:

    @.net dev guy

    sounds like an implementation problem rather than technology.. of course the webforms projects do better when you have a team of .net engineers that have multiple years of experience working with the framework vs. brand new mvc-in-.net with a few months of use behind it?

  17. JC says:

    I am not a developer but i am learning and developing my own website. From asp.net 2.0 to asp.net 3.5 I was having a little difficulties deciding which method I should use for cross pages variables so I came across with MVC Preview 3, learned a bit of routing and viewdata concepts and now i have my site almost 90% translated to mvc style coding. Reading the unit testing I thought i will do my own way of testing with sample data than spending time learning how to do proper unit testing. I find it hard in MVC to have multiple submit buttons in the same form. For example you have submit form button and you also have upload picture button in same form, you want to save form when you hit ‘upload picture’ then post back to same page (I think mvc preview 5 may have addressed this already). The viewdata is good for passing data from controller to view page but passing the same data to another page or posting back to the same page requires a bit of coding to return the same data. I think if MVC team can improve passing data to multiple pages until you ‘release’ the data will help to simplify cross pages data. You can visit my MVC sites at http://www.adsandpages.com http://www.blogsandpages.com

  18. Adam says:

    Too slow in comparison to webforms. Perhaps this will change with dynamic data integration….?

  19. Ben says:

    Hey

    The business that i am the co-owner primarily runs an online shop that i did using webforms and once it grew quite large it annoyed me how webforms doesn’t have a particulaly good seperation of concerns.

    Since then we have expanded and are soon to launch a local portal site, i decided to do this in MVC as i wanted an excuse to learn how to use it.

    I have to say i have been extremely impressed. The documentation is not very good but the store front application by Rob Conery is very good as are the stephen walter and haacked blog posts.

    As with any new technology there is a learning curve but it isn’t very difficult to get your head around.

    The big plus for me has been being able to write my own xhtml and js an know it will work/validate (well its up to me to make it work and validate, asp.net isn’t going to interfere) which lets me plug in a js library that i hadn’t written previously for a php website.

    The curent big pain in the butt for me has been the difficulty in placing dynamic content in master pages, in the end i’ve resulted to using filters to inject data into the ViewData. But from my brief understanding of other MVC frameworks this problem hasn’t been convincingly solved yet.

    Thanks for the good work and i’m looking forward to the Beta.

    Ben

  20. Simon Rigby says:

    We have an application which is due for a major version upgrade. As we were going to take the opportunity to rewrite several components we have been looking at MVC closely. It appears to do what we want to do quite closely, however the decision as to whether to implement it in the next version will depend on the arrival of a "stable" beta. It’s not a criticism at all (the changes that have occured through the various CTPs) as I fully understand and appreciate that this will happen as feedback arrives from verious parties, but we can’t really go down the route of proper development until the goal posts stop shifting as such.

    The major appeal for me has been the unit testing and hackable Urls.

  21. Marko says:

    I was using mvc preview 2 in my last project.

    From version 2 to version 5 lots of futures added, so my comments are on version 2.

    cons:

    -learning curve is longer when compare with other ms web frameworks(asp.net)

    -very few “controls” in case of mvc: helpers

    -ajax is heavier to implement

    -lack of proper documentation: i was forced to use blogs and forums

    pros:

    -much much cleaner code

    -rest is kick butt ๐Ÿ™‚

    -no viewstate

    so, in my opinion, what mvc needs to be widely accepted is:

    1. documentation

    2. controls/html helpers

    3. better ajax support

    cheers

  22. Mike Stokes says:

    We’ve used ASP MVC exclusively on our new web application http://www.nett30.com – we’ve found it to a great step forward from web forms.  It’s a bit of a mindset change obviously but the comfort our developers have got from the control that MVC provides (as opposed to a bit of a black box sometimes with web forms) is great.

    Poor documentation so far but it is a preview release and the source code is available and there are a couple of really good blogs to educate and provide examples. The community forums are helpful.

    It’s lacking in a few core areas but this is obviously because it is being developed still.  With the source code and extensibility it seems to provide, you can change out pieces you don’t like (e.g. their form validation stuff) and switch in something your team prefers.

    Overall we’d rate it highly for the control it gives you.  Speed of development is good and code re-use is awesome!  Happy coding ๐Ÿ™‚

    Mike

  23. Ryan Terneir says:

    I’ve looked into MVC, however I don’t see where it solves any real issues we have with web design / web application design.

    At the end of every project, there are deliverables. Like .NEt Dev Guy said, I have yet to see any MVC project hit those deliverables.

    I think it’s just Hype (sort of like LINQ), great with some of the smaller applications, but when you’re working on an application with 80+ code projects in it, working with custom factories and reflection up the wazoo, it just doesn’t fit the bill.

  24. Brian says:

    About nine months ago I decided to finally make the switch from classic ASP to ASP.NET, but I could not get my mind around all the server-side stuff and postbacks.  Then I stumbled upon MVC, and hoped this was the answer.

    Now, nine months later, I have yet to do anything with MVC other than mess with the ready-to-run demos.  After reading countless blogs and watching innumerable videos, I still have not grasped it, or Dynamic Data for that matter.

    These environments are so esoteric and obscure that it must have been by design.  I wonder whether the the people ‘responsible’ for these offerings have ever encountered a real-world development requirement, in other words one that requires more than just Customer and Order tables.

    In the meantime, if I have done anything productive in the last nine months, it has been in good ol’ classic ASP.

  25. Steve says:

    We are planning to develop a larger web app using ASP.net MVC and creating an infrastructure framework for this.

  26. PK says:

    LoL at all the whingers. IMO, if you don’t like ASP.NET MVC because of what it offers, then please stay away and frolik in your WebForms world of pain and problems. I especially love the comments about ‘WebForms is quicker to program with’. So lol. Enjoy the support-and-maintenance problems.

    Back to the topic -> I’m re-learning how to rewrite our projects properly with MVC, IoC, Repos Pattern, etc … and by the time i’ve tested each of these things out, the Beta or RTM will be out and i’ll fnd time to port. All new projects will be MVC from now on — no questions about it.

    Bring it on, I say .. and finally we’ll all start to get closer to making better code that’s more maintanable to change.

    lol @ those who just don’t understand and complain about change.

  27. Coder says:

    ASP.NET MVC is just Classic ASP on steroid. Back in the 90’s, our team designeddeveloped framework components for ASP application that has the same features as ASP.NET MVC. The so call architects who are trying to make a case for MVC has probably never build an enterprise application using it. Having work with Jakarta Struts, I can honestly say that ASP.NET is a more productive platform. Here is my take on ASP.NET MVC:

    1. Putting conditional and flow control construct in server side tags to render HTML will lead to spaghetti code. This is a recipe for maintenance nightmare.

    2. You can’t treat web controls like an object because it doesn’t have properties and events.

    3. Like classic ASP, it’s difficult to maintain state information when working with a complex form.

    4. Unit testing is important, but there is little benefit in unit testing the controller. Q&A team will never do it.

    5. With ASP.NET, I can build custom controls. This will promote reusability and consistency.

    I think every developer strives to practice good software engineering, but at the end of the day, you have to delivered projects on time and on budget. ASP.NET MVC will add needless complexity with very little benefits.

  28. Anyone who is pushing classic asp is CLEARLY in need of some serious schooling.  MVC is not a replacement for WebForms – just a different style.  WebForms are very Easy in concept.   I have several sites built with using them and that’s great.  

    Have yet to learn MVC fully – been reading here and there and so far, it’s different – but what I’m looking for is if it will make my web developer life easier… does it make sense to use it in a real world project other than it just being a newer piece of tech…  If not, back to webforms

  29. Winston Pang says:

    I’m finding myself, still not stepping into looking at the framework, I’m scared that investing time in it, and having to keep up to date with changes in each preview release is going to cause me to pull out all my hair.

    I just wish it’s more set in stone, and some resources online, are examples targetting older previews, with things which might have changed, I wish some of these older articles which aren’t relevant to the current releases, cleaned up.

  30. vidalsasoon says:

    I’m skipping ASP.NET MVC because I just do not like working with HTML… Seems like a step down IMO.

    Perhaps MVC for WPF will be cleaner.

  31. Astoria, Silverlight 1.0, SL 2.0, Entity Framework, Volta, Ajax, Popfly, IIS7, new Browsers and at least MVC

    a lot of stuff for a tiny developer.

    In fac 98% are lucky to solve daily problems in time without bugs.

    I would suggest Microsft to improve ASP.NET with more controls, better support for AJAX (and Toolkit) engange in Silverlight which is really the future.

    The sad thing is that great ASP.NET 2.0 have not been improved to ASP.NET 3.5. It is nearly the same.

    btw: have to post this with chrome cause of console Jscript errors with IE 8- thats daily business

  32. Jiang says:

    WebForm is a wonderful invention while ASP.NET MVC is a step backwards.  Why can’t the ASP.NET team make MVC on top of WebForm?  If I am the VP in Microsoft I will fire those who divert the money for something outdated and every other framework is doing it.  PHP has MVC, Java has MVC.  Microsoft has been great inventing a totally different framework that is WebForm.  I can’t understand why ASP.NET team ditch the effort in perfecting WebForm and start eating other people’s vomits?  Come on! Someone in the ASP.NET team is having a mental breakdown and releasing perview after previews.  Come on, come back to work on the WebForm Framework and stop reinventing the wheel over and over again.  WebForm is the greatest Framework when it comes to developer productivity and resuability.

    What ASP.NET MVC gives you?  Tons of spaghetti code that need extensive unit testing.  well, well, OK, it’s easy for TDD.  It’s like saying my dog breaks its leg so it’s easier to call a vet to fix it; when the leg is not broken, it’s hard to call a vet; so we must break my dog’s leg in order to fix it.   BS! ASP.NET team needs to have someone with business acumen!

  33. tomchris says:

    Let me know if the console error is gone now.  Hopefully it is fixed.

  34. darren says:

    I am working on a commercial site using MVC.  I have never liked web forms, thought there was too much work being done by me to get simple things to work.

    I’m finding that the MVC framework, even in this early stage, is a lot easier to work with.

  35. Matt says:

    I have been working with the MVC pattern for a while now.  I do not think this pattern used with ASP.NET is the answer.  Webforms is much easier and quicker to program and actually get things done in ASP.NET.  Microsoft should be investing in webforms.

  36. Jiang says:

    Commercial site using MVC is possible because commercial sites are always stepped down from the Intranet applications.  Commercial sites use more primitive technologies with a much slower pace of development because it has to cater to a much wide array of browsers and audience.   But for data centric LOB intranet applications, ASP.NET MVC is definitely an overkill.  It will increase budget for development and generate a whole lot more plumbing code the developers themselves have to maintain.  With webforms, you don’t have to maintain the code for controls like gridview, datagrid, etc.  Both webform and MVC use divide and conquer to solve a complex development issue.  The difference is that with MVC you have to have a big team with average experience and talent to divide and conquer while with webform, you divide and conquer with a team of highly skilled experts (developers from Microsoft and other ISVs, much more experienced and talented than the average enterprise developers.  I would like to bet that your MVC projects will run at much higher cost than the Webform projects.  

  37. Jarrett says:

    Real developers want MVC and really like the new flexibility it provides over web forms.  Business users, or programmers with less "wide" ranging skills will continue to prefer web forms.  Anyway, I’ve got an open source blog engine on codeplex: http://codeplex.com/blogsvc

    or

    http://blogsvc.net

  38. Jiang says:

    Probably real developers just want to play with all kinds of toys, don’t care about the deadline when the project should be delivered.  Your profile of real developer is probably more or less as scripter, html and javascript or better php.  About "wide" ranging skills?  I don’t think web form advocates are any less wider than the MVC lovers.  It’s all about priority and productivity.  Asp.net MVC at this stage can only be called a toy compared with Web Form.

  39. Craig says:

    I have used MVC to build my Real Estate and property search engine http://www.baseestate.com.

  40. Pete Nelson says:

    This site uses MVC and Silverlight and we are very happy with the results

  41. Been coding and maintaining WebForms for 7 years. ASP.NET was like a gruesome trainwreck if you have ever used any decent web tech like PHP or Ruby. I despised it and was convinced I would never be interested in it unless forced to.

    Started learning MVC a couple months back.

    Seriously, this is the greatest thing to come out of Microsoft since .NET itself. It’s beautiful. Everything about it is so elegant and clean it makes web programming as much fun as Winforms.

    I am certain the people who wouldn’t prefer it would be people posing as programmers so they can make a nice middle class income. Real programmers would absolutely love it and you will find with just a little patience it is easier to pick up than PHP or Ruby.

    For the whingers who complained you can’t do anything complicated with it, you have to be kidding. I’ve got several submit buttons on the same form all using a simple text tag to do different things in the controller. If you want you can route things to functions with lambdas in the ASP code. I don’t know half of it yet and it’s a million times better than ASP.NET or ASP/VBScript ever was.