views:

187

answers:

7

I realize that ASP.NET MVC has all the hype. I have my doubts that I need it, but wanted to explain my potential project:

  • This is an internal LAN application. It is doing CRUD operations and a little reporting.
  • The user base is small (< 12 people) and there is not tons of data
  • There is not a huge number of screens (Maybe 20)
  • I don't care about URL rewriting
  • My view state is typically small (like a DealID or ClientID)
  • Even though I don't have a full mastering of Page Lifecycle, I do understand Postbacks and don't have a problem coding for it.
  • I believe in Layering and am familiar with the M-V-P pattern and other patterns.
  • I want to do some Unit testing, but heck 25-50% coverage is better then what most apps.
    • The app will have a little AJAX for search screens, but don't see it being overkill.

So what do you think? While using the "sexy" technology is cool, is it necessary?

+7  A: 

No, it's not necessary. It sounds like you've already made up your mind. If the application isn't all that critical and you're more familiar with web forms, just do it the way you know how to. I think ASP.NET MVC is worth learning, but it isn't the right solution for every project. Go and try it out in your free time so that when this situation comes up again, you'll have more options available to you.

Kevin Pang
+5  A: 

No you don't strictly need MVC but are you asking whether you should learn something new or use what you already know for an internal project? An internal project might be the perfect place to try out something new.

Brian Ensink
Yeah, I have been thinking about that. But, I feel like I'm at the end of my "development days" and headed to Project Management. So I could restock my Tech skills or put some icing on the cake.
Patrick From An IBank
A: 

It's not necessary, no, but there's no reason why you can't use webforms or MVC.

If you feel comfortable working with webforms, then go down the webforms approach. If, however, you feel the need to broaden your knowledge of architectural patterns, then ASP.NET MVC is a pretty nice thing to use.

Dan Atkinson
A: 

If unit testing is important to you, go with MVC. Everything else you mentioned, though, points to WebForms.

mgroves
Using web forms does not preclude unit testing. With good separation of concerns, all the most important code can be unit tested easily.
John Saunders
A good separation of concerns is what MVC provides. I'm not saying you're wrong, but I think MVC is just more test-oriented.
mgroves
+2  A: 

As was said, it's not necessary. However, if you're doing a basic CRUD application (and it sounds like you are), MVC would make that nice and easy.

Matt Grande
+1  A: 

You can use both.

Create a Visual Studio Web Application (not a website), and you'll be able to use both if needed. You'll just need to add a reference to MVC and setup the routing.

Webforms and MVC

Arron
For something this small using both would be unnecessary and frustrating. One pattern should be sufficient.
Jim
A: 

You mention you're moving to project management. Do you think any of the projects or products you look into will be using MVC? If so then at least you'll have some familiarity by learning it with this small application. This means it is necessary, if you need it as a PM, but you do not require it just to build the app. It could run with anything you choose.

Incidentally, ASP.NET MVC is new, not MVC, not by any stretch of the imagination. I know you did not say it was, but you mention hype. I cannot help but think Java and other folks are saying, "We've been doing this for years and years."

johnny
yes. well aware of that. And the Pattern itself I like.
Patrick From An IBank