Great Ideas. Always Flowing.

We are not happy until you are happy. Client satisfaction guaranteed. Whatever your needs and requirements, we have the skills and resources for the job!

Popular Tags....

Popular Tags...

SnowCovered Top Sellers

Frustrated over the lack of customization for your user's registration fields? Dynamically setup your DNN Portal with custom registration fields, layout, questions, and other core integration options......

Ultra Video Gallery is a brother product of Ultra Media Gallery, UVG allows you to upload videos in various format and automatically encode them to flv or H264 format, you also can add videos from internet or record live videos from your webcam.

Build high performance, completely customizable data-entry forms and views driven by your DNN and external databases. New built-in tools make it a snap to quickly create data entry forms, data views, and even database tables. Plus, add your own HTML, CSS, Javascript, SQL commands, stored procedures,

The most advanced DotNetNuke shopping cart on the planet. Easy to use e-Commerce, Secure Shopping Cart Software and SEO friendly. B2C / B2B Ecommerce Sites.

One stop solution for events calendar and events registration! FREE DOWNLOAD is available now!

ASP.Net MVC for ASP.Net Webforms Users

A quick dip into ASP.Net MVC for ASP.Net Webforms Users

 

The introduction of ASP.Net MVC has pleased a large segment of ASP.Net programmers who were thirsting to go beyond the often clunky page-driven model of ASP.Net.

 

MVC or Model-View-Controller is a programming pattern that makes code more organized and testable, improving maintainability. These are key requirements if you’re making a professional, enterprise level application, or are trying to make the next big hit on the world-wide-web.

 

ASP.Net MVC is built on the top of the same ASP.Net technologies that we’ve been using since years. By re-writing some of the rules of classic ASP.Net, the engineers of the MVC team have brought us full MVC functionality, creating an all new way to program in ASP.Net.

 

 

The components of MVC

 

MVC stands for Model-View-Controller. In this classic pattern, the program is divided into three distinct parts.

 

Model – The part that does all the background processing, the database work, the business logic. The Model just processes information. It either stores, retrieves, or re-shapes it. The Model does not have a say in what the information is used for, or how it is presented to the user.

 

View – The View is what the user sees on-screen. The View lets the user see the information, work on it and save the changes to the application. In the MVC pattern the View does not contain the logic to process the information, merely to present it.

 

Controller – The Controller acts as a bridge between the Model and the View. The information that is processed by the Model is presented by the View and it is the controller that decides what information is presented and processed.

 

So as you can see the entire program is divided into three units and you store the relevant code for each unit in that portion only. By adhering to the rules of Model-View-Controller pattern, you can make complex apps easier to develop and make teamwork easier as different people can work on different parts of the project without disturbing others.

 

 

ASP.Net MVC Control Flow

 

 

Thinking in MVC

 

Working with MVC requires a very different thought process than working in Webforms. In ASP.Net webforms we are used to assuming that the name of the URL has a direct relationship with the file which contains the HTML markup and code. Many of us also use the ASP.Net page to process the business as well as presentation logic.

 

In MVC the business, database and presentation logic are different layers. Each layer works pretty much independently and passes on the execution to its successor when it is done with its job.

 

ASP.Net MVC makes the use of URL routing to implement the MVC pattern. Instead of containing the path to the ASPX page, the URL has the details of the Controller and the Action (More about Actions later), which in turn decide what data to display.

 

So the first thing you need to do to work with MVC is to switch off your Webforms brain and start learning the technology like a beginner.

 

How to Set up ASP.Net MVC on Your PC

 

ASP.Net MVC will be a standard component in Visual Studio 2010. Till then however we must install it separately on Microsoft Visual Studio. MVC can be installed on any edition of Visual Studio 2009, even the express edition.

 

Before installing MVC, get the latest patches for Visual Studio to make sure the IDE is updated and capable of working with MVC. You should also get ASP.Net 3.5 framework SP1 upgrade.

 

Download the MVC installation from http://www.asp.net/mvc/download/.

 

 

Making an ASP.Net MVC Application

 

If you’ve successfully installed ASP.Net MVC on your computer, you’ll see a new project type of ‘ASP.Net MVC Web Application’ in your Visual Studio File->Project->Web dialog.

 

 

Select this project type and click OK to create your Asp.Net MVC project. Visual Studio will also prompt you to create a Unit Test project. If you are interested in Test Driven Development (TDD) then create the Unit Test project too otherwise select ‘Do not create the test project’.

 

A new project of type ASP.Net MVC is not an empty project. Instead you’ll get a template application with several pages that you must delete/modify to make your own application. Because making even a trivial MVC application requires many steps, Microsoft has provided the template that will help you learn the structure of the MVC application.

 

Here’s the structure of the initial MVC application in the graphic. Notice the big number of files that are already a part of the project.  ASP.Net MVC introduced the following folders.

 

Content

You can keep all your website related content here, including CSS files, xml data, images, etc.

 

Controllers

The controllers folder stores your controller classes that have the responsibility of extracting the data from the models and then passing the control over to the correct View using Actions.

 

Models

All the code classes that have your business or data retrieval logic go here.

 

Scripts

Keep all your javascript files here. Microsoft is integrating ASP.Net MVC tightly with JQuery, so you’ll find that JQuery files are already a part of the project.

 

Views

The views folder should have the files that will handle the displaying of the data to the visitors. The view files should be in a folder with the same name as that of the controller.  There is a naming convention for individual files in the Views folder too. We’ll learn about it after we have understood what Actions do.

 

Views are like your standard ASP.Net .aspx files but they cannot have a code-behind file so you’ll have to do all coding in the same page as the HTML itself. You’re also supposed to use only standard HTML and there is no more Viewstate to rely upon.

 

A View can inherit from a Masterpage, have HTML data, contain usercontrols and even contain your C#/VB.Net code.

 

What are Actions?

Here’s the code for HomeController controller class of the ASP.Net MVC template project.

 

 

Notice that there are two functions with the return type ActionResult. These are the ‘Actions’ of the controller. Based on the URL requested, the controller calls the appropriate Controller and Action function which can then return a view, redirect the visitor, return javascript, JSON, etc.

 

Also note that ‘View()’ itself is a function. By default, ‘View()’ looks for an ASPX file with the same name as the Action function, in a subfolder with the same name as the controller class.

 

Let’s understand that better with a sample URL.

 

http://www.mywebsite.com/products/walkman

 

Let’s do a breakdown of the url.

 

http://www.mywebsite.com

This is the top-level domain name, or the website name which has our ASP.Net MVC application.

 

Products/

This is the name of the controller, so when a visitor tries to access the URL, ASP.Net MVC will look for a controller named ‘ProductsController’. Why not just ‘Products’? Because according to ASP.Net MVC rules, all controllers must have the suffix ‘Controller’. So if your url has ‘Products’ as the second part, the controller must be named ‘ProductsController’. If your url had ‘Home’ instead of ‘Products’ then the controller would have to be named ‘HomeController’

 

All the controllers have to be placed in the folder ‘Controllers’.

 

Walkman/

This is the name of the Action function which will be called inside the Controller. So this URL will call the Action ‘Walkman()’ in ProductsController. The Action can then return a view or other data. Like I said earlier in the article, by default MVC will look for a view with the same name as the Action in the Views/Products folder.

 

If you want to return a specific view, you can specify its name as an argument to the View function like this:

 

return View(“Myview”);

 

This time instead of looking for a view named ‘Walkman’, MVC will look for a view named ‘MyView’.

 

There can be a third argument in the url. Suppose our url was this:

 

http://www.mywebsite.com/products/walkman/handy

 

The last part ‘handy’ would be passed as an argument to the controller. So your controller could look something like this:

 

 

In the code above if the Action gets an argument with the value “handy”, it will return the View named ‘Handy.aspx’. Otherwise it will return the Default view named ‘Walkman.aspx”.

 

Communicating through ViewData

Earlier in the tutorial I said that the View should only have the presentation code and no business or data retrieval logic. So how do you take the information that is to be displayed to the view? The answer is, through ViewData.

 

The ViewData is a special Dictionary object that you can work with in your Controllers and your Views. You can retrieve the information from your Models, put them in the ViewData and then in your Views, you can retrieve the information from the ViewData and display it.

 

Thus ViewData acts as a communication bridge between the Controller and the View.

 

Conclusion

This concludes our quick and dirty introduction to ASP.Net MVC. The best thing about using ASP.Net MVC is that you can afford to forget all the rules I have told you about and code the way you do with classic ASP.Net in your MVC application itself. You will just need to make sure that the pages you create do not have the same name and location as a controller.

 

This gives you enormous power because you can create hybrid applications that have the features of both ASP.Net classic and MVC.

Share the page?

ASP.Net MVC for ASP.Net Webforms Users - share this page - email email - del.icio.us del.icio.us - digg digg - reddit reddit

Feedback Comments

Feedback

SharePoint Web Parts


All Data Springs Web Parts Support WSS 3.0, SharePoint 2007, and SharePoint 2010 Frameworks

Please select license option for each web part you wish to purchase. We highly recommend the SharePoint Bundle to get all Data Springs Web Parts for maximum value!

 

 

      
Cart


Data Springs Sharepoint Bundle

Best Value! The Bundle gives you all 5 web parts in one package at a very attractive price! Best Value! We think you will be very happy with the SharePoint bundle and great price discounts you will receive. With your purchase all of the web parts below will be included.
 
 
 
 

Random Image Web Part

With Random Image for Sharepoint 2007, you can select multiple images to display randomly when the web part loads...
 
 
 
 

Stock Quote Web Part

Giving your site visitors relevant information is critical. With the Data Springs Stock Web Part you can provide your users with up to date financial information
 
 
 
 

Dynamic Image Rotator Web Part

Who would have thought? Adobe Flash® with Sharepoint! The FIRST and ONLY image rotation web part for Sharepoint using Flash Technology from Adobe! The Dynamic Image Rotator displays selected images and then rotates between the images. Several extended and optional features allow you to select the time to rotate each image, fade between
 
 
 
 

SharePoint Charts Web Part

The MOSS Chart Web Part is a web part built by Data Springs for the purpose of rendering several chart types based on data from a SharePoint list on a MOSS 2007 or WSS 3.0 Site
 
 
 
 

Dynamic News Ticker Web Part

Provide current news items with a user-friendly news ticker for your Sharepoint Portal. With millions of web sites offering information you need a fun way to display information and the solution is Flash News Ticker....
 
 
 
 

Tailored Text Web Part

 Tailored Text Web Part allows you to add text/html to your web site that can be different for anonymous users, registered users,  and even individual users specifically.

 
 
 
 

Dynamic Views Web Part

Dynamic Views is an excellent tool to:
Personalization allows you to go the extra mile in communicating or connecting one to one with your clients. When it comes to technology and web site content, you now have the power to leverage this personalization directly with your users on your DotNetNuke® site

 
 
 
 

Dynamic Login Web Part

Your site content isn't vanilla, so why is your portal's login?

Add pizazz and functionality with Dynamic Login! Use custom templates, localization, redirection rules for various roles and many more features!
 
 
 
 


DNN Modules

DotNetNuke Modules


Data Springs offers cost-saving packages that fit your needs:

Purchase the Collection 6.0

Data Springs Collection 6.0

An entire tool chest to quickly build websites and construct complex, powerful, and relevant workflow. Elevate your design with custom registration, forms, displays, reports, user management, payments, Google maps,, SQL updates, and so much more!

Best Value!  Includes all DotNetNuke modules by Data Springs.

$ 495.00

Data Springs User Management Suite 3.0

All the tools you need to enhance user & profile management from A to Z!.  A comprehensive package with 5 feature-packed modules that offer extensive admin controls and easy user interface geared towards an effective and growth-oriented site!  .... more

 

Includes:  Dynamic Registration     Dynamic Login   ♦   Interactive User Import     Dynamic User Directory   ♦   Renewal Reminder    A value of more than $630.00!

 $ 369.00

 

 

Check out all our individual modules!

 

 View Dynamic Registration

Dynamic Registration 5.0 (new release on 6/12/2013)

Need custom fields and workflow for your registration? Get all the power and ease of use to create the registration and profile management just the way you want it... more

$ 199.00

View Dynamic Forms

Dynamic Forms 4.1 (released 5/16/2012)

Whether it's for marketing, sales, contact forms, scheduling, information requests, surveys, or to simply better understand your customer needs, the possibilities for creating powerfully effective forms are now easy and endless! ... more

$ 195.00

 

Dynamic Views 3.1 (new on 2/7/2013)

Now have an easy yet feature-rich reporting module with custom defined display templates and unlimited search options from  Dynamic Forms or any data source like a table, view or custom query!  ... more

$ 169.00

 View Dynamic Login Module

Dynamic Login 4.1 (released 10/19/2011)

Add pizazz and functionality to your site login! Dynamic Login gives you custom templates, localization, redirection rules, SQL Validation, and Single SignOn. Want more? How about Facebook Connect, LinkedIN, and Twitter, too? Your login has never been so exciting!.   ... more

$ 149.00

 View Interactive User Import

Interactive User Import 3.0 (released 8/17/2011)

Interactive User Import provides you with the functionality to easily and quickly import users into DotNetNuke and Dynamic Registration, through a streamlined and well-documented wizard that includes many advanced features... more

$ 149.00

 View Dynamic User Directory

Dynamic User Directory 4.1 (released 4/26/2012)

The perfect compliment for extending your portals users and community! An essential ingredient for managing dynamic user information, is being able to sort key fields and create useful user directories and custom report information... more

$ 179.00

 View Renewal Reminder

Renewal Reminder 1.3

Renewal Reminder provides you with the functionality to setup email notifications for users that their security role will soon expire. After installing your renewal / security role reminder module you can now setup scheduled notifications to be distributed to your users... more

$ 129.99
 View Opt In Email

Opt In Email 5.0 (new on 4/17/2013)

'Relationship Building' and 'Communication' are two essential nuts and bolts for a business to prosper. This module allows you to bridge both of these and easily generate continuous awareness of your web site, products and services. Your prospects and customers will greatly appreciate this feature... more

$ 179.00

 View Tailored Text

Tailored Text 3.0

Personalization allows you to go the extra mile in communicating or connecting one to one with your clients. Leverage the power personalized content on your DotNetNuke site... more

$ 109.99
 View Stock Quote

Stock Quote 1.2

Giving your site visitors relevant information is critical. With the Data Springs Stock Module you can provide your users with up to date financial information... more

$ 109.99
 View Presentation Archive

Presentation Archive 2.0

With so much content on your web site, its important to give users an easy method for finding and retrieving content. Presentation Archive allows you to categorize, organize and present content within your DotNetNuke site for presentations, educational material, videos, and almost any document... more

$ 124.99
 View Real Estate

Real Estate 2.3

Real Estate 2.3 is a feature rich and user-friendly module that allows your portal users the ability to create real estate listings on your site... more

$ 149.99
 View Dynamic Image Rotator

Dynamic Image Rotator 3.3

Dynamic Image Rotator displays selected images and then rotates between the images using the Adobe® Flash® platform.  Several extended and optional features allow you to select the time to rotate each image, fade between images, and also display the images in either sequental or random order... more

$49.99
 View Info Pics Gallery

Info Pics Gallery

The Info Pics Gallery Module allows you to display thumbnail pictures with information to the user about each picture, along with a detailed description regarding the set of pictures and several other optional links... more

 $ 69.99
 View Testimonials Module

Testimonials

The Testimonials Module allows you to display customer testimonials on your site, as well as an easy method for users to submit testimonials about your web site, services, or products... more

 $ 49.99
 View Dynamic Info Cube

Dynamic Info Cube

Take your web site out of the box! Looking for a creative and interesting way to showcase information and content on your site? With millions of web sites offering information you need a fun way to display information and the solution is Dynamic Info Cube... more

$ 99.95
 Search Engine Optimization Cloud Module for DotNetNuke

Dynamic Tags

Nearly every web site developer would agree that search engine optimization is one of key aspects to a successful web site. Part of search engine optimization requires providing search engines that crawl your web site with appropriate and meaningful content... more

$ 69.99
 View Page Tags

Page Tags

'Page Tags' pulls in search terms that users searched to find the current page. There are many benefits to displaying these search words that delivered the user to the site, find our more details ... more

$ 59.99
 Random Rounded Images

Random Rounded Images

Random Rounded Images is an easy to use upgraded version of the images module included with DNN. With RRI, you can select multiple images to display randomly when the module loads. For example, you can add 10 images to the module, and each time you refresh or load the page one of those images will... more

$ 49.99
 View Back on Track

Back on Track

Giving your site visitors fast access to areas of interest is vital to your web site's ease of use and ultimately - sales potential... more

$ 99.99
 

Dynamic News Ticker 2.0

Dynamic News Ticker allows you to scroll through news items in a horizontal or veritical direction with administrative features that allow you to easily customize the look of your news ticker. Each instance of Dynamic News Ticker can be set up to have different sizes, scroll directions, scroll speed... more

$ 39.00
 View Quick Poll

Quick Poll

Give your users a voice, while also providing an important way for you to gather opinions from your users and measure visitors' responses to questions on your site! Polls are significant because they can provide a way for your web site visitors to share ideas and vote on topics of your choosing... more

$ 39.99
 View Flash Contacts

Dynamic Contacts 2.0

Dynamic Contacts is the fastest and easiest way you can help visitors of your website connect with your key personnel... more

$ 79.99
     

 

 

 
 

Join our mailing list...

Get current news and events the easy way
 
 
   
Subscribe Me

Recent Blogs...

 
Copyright 2005 - 2011 by Data Springs, Inc.