ASP.NET MVC Development
ASP.NET MVC aims to seperate the logical layers of
development, providing decouplement in the same way that
Sprint.NET and teh original Spring framework for Java did.
What is an MVC?
Model
The domain-specific representation of the information on which
the application operates. Domain logic adds meaning to raw data
(e.g., calculating if today is the user's birthday, or the
totals, taxes, and shipping charges for shopping cart
items).
Many applications use a persistent storage mechanism (such as
a database) to store data. MVC does not specifically mention
the data access layer because it is understood to be underneath
or encapsulated by the Model.
View
Renders the model into a form suitable for interaction,
typically a user interface element. Multiple views can exist
for a single model for different purposes.
Controller
Processes and responds to events, typically user actions, and
may invoke changes on the model.
What we can expect from ASP.NET MVC :
- It enables clean separation of concerns, testability, and
TDD by default.and All core contracts within the MVC
framework are interface based and easily mockable (it
includes interface based IHttpRequest/IHttpResponse
intrinsics).and You can unit test the application without
having to run the Controllers within an ASP.NET process
(making unit testing fast).and You can use any unit
testing framework you want to-do this testing (including
NUnit, MBUnit, MS Test, etc).
- It is highly extensible and pluggable.and Everything
in the MVC framework is designed so that it can be easily
replaced/customized (for example: you can optionally plug-in
your own view engine, routing policy, parameter
serialization, etc).and It also supports using existing
dependency injection and IOC container models (Windsor,
Spring.Net, NHibernate, etc).
- It includes a very powerful URL mapping component that
enables you to build applications with clean URLs.and URLs
do not need to have extensions within them, and are designed
to easily support SEO and REST-friendly naming patterns.
- The MVC framework supports using the existing ASP.NET
.ASPX, .ASCX, and .Master markup files as "view templates"
(meaning you can easily use existing ASP.NET features like
nested master pages, <%= %> snippets, declarative
server controls, templates, data-binding, localization,
etc).and It does not, however, use the existing post-back
model for interactions back to the server.and Instead,
you'll route all end-user interactions to a Controller class
instead - which helps ensure clean separation of concerns and
testability (it also means no viewstate or page lifecycle
with MVC based views).
- The ASP.NET MVC framework fully supports existing ASP.NET
features like forms/windows authentication, URL
authorization, membership/roles, output and data caching,
session/profile state management, health monitoring,
configuration system,andthe provider architecture,
etc.
and
DOTNUTSHELL can develop entrerprise level software systems
utilizing n-tier architectures and MVC.