ARTICLE

Dynamic Data Web Application

Posted by Vijay Prativadi Articles | C# Language November 13, 2012
Today, in this article let’s play around with one of the interesting and most useful concepts in C#.
Reader Level:

Introduction

Today, in this article let's play around with one of the interesting and most useful concepts in C#.

Question: What is dynamic data web application?

In simple terms "It enables performing the CRUD operations with the help of pre-defined created dynamic templates".

Step 1: Create a new webform project:

webform-project.png

Step 2: Add a new ADO.NET Data Entity Model item:

ADO.NET Data Entity Model.png

ADO.NET-Data-Entity-Model2.png

ADO.NET-Data-Entity-Model3.png

Step 3: The output of Global.asax.cs looks like this:

using System;
using System.ComponentModel.DataAnnotations;
using System.Web;
using System.Web.DynamicData;
using System.Web.Routing;
namespace
DynamicDataApp
{
    public class Global : System.Web.
HttpApplication
    {
        private static MetaModel s_defaultModel = new MetaModel();
        public static MetaModel DefaultModel
        {
            get{return s_defaultModel;
            }
        }
        public static void RegisterRoutes(RouteCollection routes)
        {
           
// IMPORTANT: DATA MODEL REGISTRATION // Uncomment this line to register an ADO.NET Entity Framework model for ASP.NET Dynamic Data.//
            Set ScaffoldAllTables = true only if you are sure that you want all tables in the// data model to support a scaffold (i.e. templates) view.
            To control scaffolding for// individual tables, create a partial class for the table and apply the//
            [ScaffoldTable(true)] attribute to the partial class.//
            Note: Make sure that you change "YourDataContextType" to the name of the data context// class in your application.
            DefaultModel.RegisterContext(typeof(CompanyEntities), new ContextConfiguration()
            { ScaffoldAllTables = true });
           
// The following statement supports separate-page mode, where the List, Detail, Insert, and // Update tasks are performed by using separate pages.
             To enable this mode, uncomment the following // route definition, and comment out the route definitions in the combined-page mode section that follows.
            routes.Add(new DynamicDataRoute("{table}/{action}.aspx"){Constraints = new RouteValueDictionary(new {
action = "List|Details|Edit|Insert" }),Model = DefaultModel});
           
// The following statements support combined-page mode, where the List, Detail, Insert, and// Update tasks are performed by using the same page.
            To enable this mode, uncomment the// following routes and comment out the route definition in the separate-page mode section above.//
            routes.Add(new DynamicDataRoute("{table}/ListDetails.aspx")
            { Action = PageAction.List, ViewName = "ListDetails", Model = DefaultModel});
            routes.Add(new DynamicDataRoute("{table}/ListDetails.aspx") { Action = PageAction.Details, ViewName = "ListDetails", Model = DefaultModel});
        }
        void Application_Start(object sender, EventArgs e)
        {
            RegisterRoutes(RouteTable.Routes);
        }
    }
}


Step 4: The output of the application looks like this:

Dynamic-Data1.png

Dynamic-Data2.png

Step 5: The data inserted output of the application looks like this:

Dynamic-Data3.png

Dynamic-Data4.png

Dynamic-Data5.png

Dynamic-Data6.png

I hope this article is useful for you. I look forward for your comments and feedback. Thanks Vijay Prativadi

Login to add your contents and source code to this article
post comment
     

Nice article! Keep up the good work. Vijay

Posted by Rohatash Kumar Nov 19, 2012
COMMENT USING
PREMIUM SPONSORS
Over-C is a holistic consortium of communications and technology specialists. We build, deploy and market both business as well as consumer products and solutions.
Get Career Advice from Experts
SPONSORED BY
  • PDF reports have never been easier to create. With our included WYSIWYG Designer, you can layout your reports, set up your data source and let DynamicPDF ReportWriter do the rest.
Join a Chapter