Project Report on Online Book Depot in Dot Net by Anujak124

VIEWS: 1,012 PAGES: 43

A Dot Net Project on Online Book Shoping

More Info
									                      PROJECT REPORT



                    (SESSION 2008-2012)

       SUBMITTED TO:-                    SUBMITTED BY:-
       Er. RAJAT GUPTA                      SHANTNU
    HOD CSE AND IT DEPT.                ROLL NO.4908107
      NAULTHA NH 71-A                     5TH SEMESTER
            PANIPAT                    REG. NO. 08-GTP-89

                  PROJECT REPORT



                (SESSION 2008-2012)

                   UNDERTAKEN AT


                     SUBMITTED BY:-
                    ROLL NO.4908107
                CSE III YEAR 5TH SEMESTER

This project “JAGRIT ONLINE BOOK STORE” has been developed keeping in mind the
heights “Information Technology has reached” and when everything is powered with
computers does make a great difference. This project contains information about customer
relation with client, and puts customer into heart. It is totally office automation system that
directly deals with customer. This is applicable all the customized place where is handled
with unique software. This project can used in any book publishing company, this provide
strong relationship with different type of customer that can be order to the company
online. This project contains different type of module such as Install Based management
system, service management system call management, service order management system
and knowledge management. One of the important module is Install Based Management
and call Management which contain customer related production related information. It is
just like inventory for the company.

The project JAGRIT ONLINE BOOK STORE delivery status and notification system is being
developed for the need of company running Manufacturing and Production services this is
specially meant for their frontline customer service information. This is one of the best
efforts by us to prove that how Internet can be helpful in tire service industry.

  This report is written as a text for the partial fulfillment of the B.Tech (C.S.E.) program

I would like to gratitude all those who have given me enthusiasm & moral support and helped in
developing my project (JAGRIT ONLINE BOOK STORE).

I wish to express my gratitude to projects Team at Head Office who guided and helped me. Also I
would like to express my gratitude to the staff members (Miss Shivani Nagpal ) of Aptech Computer
Limited Panipat for not only providing me opportunity to work with them on this project (JAGRIT
ONLINE BOOK STORE)but also for their guidance and enthusiasm throughout the my developing

Finally my sincere gratitude expresses to eProjects Team at Aptech Head Office and my project guide at
the organization, for his valuable guidance and support for the completion of mine JAGRIT ONLINE
                             CANDIDATES’S DECLARATION

  I, Vartika declare that the work which is being presented by me in this project entitled “JAGRIT
ONLINE BOOKSTORE” in partial fulfillment of the requirement for the BACHELOUR OF TECHNOLOGY

    Is an authentic record of my own work carried out from January to May2008 under the

    supervision of Miss Shivani Nagpal, Team Leader of Aptech Computer Limited.

                                                                       B.Tech (C.S.E.) 5TH Semester
                                                                                  K.U.K. (HARYANA)
                                     COMPANY’S PROFILE

                                APTECH COMPUTER LIMITED

About Aptech
Aptech Limited is a global retail & corporate training solutions provider headquartered in Mumbai,
India, with a presence across 5 continents.

The company commenced its IT training business in 1986. A pioneer in IT and animation education,
over the years, Aptech Limited has trained over 6 million students.

Aptech Computer Education is one of the education brands of Aptech Limited.

Aptech Computer Education has a wide range of courses, maintains education standards & provides
placement assistance.

Aptech Limited has grown & diversified into various education-related businesses. It is listed on the BSE
& NSE.

Aptech’s businesses
Here’s a glimpse into Aptech Limited’s various education & training businesses:

        Aptech Computer                  Arena Animation                       MAAC
            Education                      Animation &               High-end 3D animation & VFX
     IT training & education            multimedia training                   education

                                                                       Hardware & networking
        Avalon Academy                    Avalon Academy
 Aviation, Hospitality & Tourism   Aviation, Hospitality & Tourism
            education                         education

      Aptech Worldwide                     English Express
       International IT &             English language training
      multimedia training


       Aptech Training
                                                Attest                    Learning Services
                                      Assessment solutions for           Customised content
  Corporate training & training
                                      universities & corporates             development
Aptech’s achievements
   1. Aptech Vietnam declared No. 1 IT training provider in Vietnam for 7 consecutive years.
   2. Aptech ranked among Global Top 20 IT Training Companies by
   3. Aptech wins Franchise India’s prestigious ‘Hall of Fame’ Award for excellence in franchising.
   4. Aptech Learning Services receives ‘APEX 2009 - Award for Excellence’ for its work on eLearning
      Course on Anatomy.
   5. Featured among the India’s Biggest Newsmakers in the prestigious Business Today - Cirrus
      Review of CEOs & companies for 4 consecutive years – 2004, 2005, 2006 & 2007-08. Among
      ‘Top 10 Biggest Newsmakers in IT’ for 2006, 2007, 2008-09.
   6. Aptech among Brand Equity’s Top 50 Most Trusted Service Brands.
   7. Aptech among Forbes Global Best 300 Small Companies worldwide.

About Aptech Computer Education
Aptech Computer Education is the IT education brand of Aptech Limited. Established in 1986, it is a
pioneer in IT education.

Through its wide network of centres in India and overseas, Aptech has so far trained 6 million students.

Aptech offers a wide range of courses. These include courses for 12th pass/ college students, courses
for engineers as well as short-term courses to improve skills & knowledge in any one area.

The company also has alliances with leading IT companies i.e. Sun Microsystems & Oracle to offer
courses leading to certifications from these companies.

The following courses are available:

ACCP Career course (to become a complete IT professional)

ACTS Career course (.NET & Java for engineering/ B.Sc-IT/ BCA/ MCA students)

Sun & Oracle Certification courses

Short-term courses

Courses for 12th pass/ college students

Courses for engineering students

Courses for IT students
Quality education
Aptech gives great importance to quality of education.

The company:

Ensures that its course curriculum is as per the needs of the industry & is always kept updated.

Provides high-quality learning aids - including books & CDs - to the students & faculty. These are
developed specially by the company.

Carries out regular training & certification of its faculty to ensure that they are able to handle even
advanced IT topics.

Supports classroom teaching with assignments, workshops & guided E-Projects.

Conducts Workplace Skills training for the students to help them get better job placements.

Aptech assists students in getting job placements on successful completion of their courses.

Aptech also provides recruitment assistance to organizations. Aptech students are shortlisted based on
the organization's requirement.

To make students job-ready, Aptech conducts workshops e.g. how to do Group Discussions, how to
behave in a Personal Interview. From time to time, job fairs & campus recruitments are conducted.
Workplace skills such as time management, making effective presentations and communication skills
are also provided.

All this helps students find appropriate jobs in the IT industry while also helping save companies’
recruitment costs.

Business partners
IT education is a large market and a profitable business opportunity. Aptech has built a wide network
of centres through its partnership with hundreds of franchisees.

The passion and efforts of these business partners, along with the support given by Aptech, have made
Aptech Computer Education a household name.

The company is a pioneer in education franchising and has also set up nationwide network of centres
for its brands, Arena Animation, N-Power Hardware & Networking and Avalon Academy.
                             VARIOUS BRANCHES

Our Offices

Registered Office & H.O.

Aptech Limited
Aptech House
A-65, MIDC
Andheri (E)
Mumbai - 400 093
Tel: +91-22-2827 2300
Fax: +91-22-2827 2399

Regional Offices

South zone:

Bangalore                            Hyderabad
Aptech Limited                       Aptech Limited
813/816, 8th Floor                   5-9-57/8
B-Wing, Mittal Towers                2nd Floor
M.G.Road                             Above Syndicate Bank
Bangalore - 560 001                  Basheerbagh x Road
India                                Basheerbagh
Telefax: 080-412 33165/ 67           Hyderabad - 500 029
Chennai                              Tel: +91-40-2323 3055/ 2323 3083/ 2323 3085
Aptech Limited
Cathedral Road                       Kochi
Opp. Hotel Maris                     Aptech Limited
Gopalpuram                           2nd Floor
Chennai- 600 086                     Safeena Mansion
India                                Opp. Deepa Theatre
Telefax: 044-28115023                Ravipuram, M.G.Road
                                     Kochi - 682 016
                                     Tel.: +91-484-235 5548/ 235 5814
                                     Fax: +91-484-238 0340
West zone:

Mumbai                           Pune
Aptech Limited                   Aptech Limited
Champion Seal Compound           710, Anant Chambers
2nd/ 3rd floor                   1st Floor
15/ Parasi Panchayat Road        J.M.Road Shivajinagar
Andheri (E)                      Pune - 411 005
Mumbai - 400 069                 India
Tel: + 91-22-67727400            Tel: +91-20-25521368/ 25521369
Fax: +91-22-67727447             Fax: +91-20-255 38527


Aptech Limited
Suraj Plaza, No. 2, 8th Floor
Vadodara - 399 005
Tel: +91-265-222 5644/

2361092/ 6530333
Tel Fax: +91-265-236 1493

North zone:                      East zone:

New Delhi                        Kolkata
Aptech Limited                   Aptech Limited
A-37, 2nd Floor                  122 A
Sector 4                         Southern Avenue
Noida - 201 301.                 4th Floor
India                            Kolkata - 700 029
Telefax: 0120 4505600/ 4505700   India
                                 Tel: + 91-33-2465 5881
                                 Tel Fax: + 91-33-2465 7792
                              INTRODUCTION TO THE PROJECT

Project Objective
 The objective of this Project will develop software for On Line Book Store,from where client can buy

Our client is a retail dealer for the books and sells the books at his shop Jagrit Online Book Store . He
sells different types of books of different Publications of stories, school related text books, note books,
essay writing books, Some of books for the competitions like General Knowledge, Essay Writing, and
also Novels, books to improve vocabulary, for learning other languages, etc , and also he sells some of
the book related materials like covers, pens, pencils, etc . Also the slam books, Files, etc are available
at his shop.

Existing Scenario
Actually the client deals directly with some of the publications for purchasing the books, and for some
of the publications he purchases the books through the other dealers. Also some of the dealers and the
book sellers purchase the books from our client. The customers either visit the dealer or call him for
purchasing. Similarly is the case with the client. Because of no automation in the system, the orders
placed get delayed, due to which the customer dissatisfaction happens. Also in this competitive world
where the number of publications and the dealers are increasing, it becomes difficult to retain the

In order to retain the customers, he has placed some of the discount schemes such as if the customer
places an order in bulk then that customer can get the discount based on the quantity of orders. Also
he has provided a home delivery which will be free, provided the distance is < 3 KMs and for the
distance > 3 KMs, the charges are as per the delivery charges as per the service chosen.

Proposed Solution
To bring the Automation in the system and to cope up in this competitive world, our client now want
to incorporate an online sale system where the customers can directly interact and place their orders
through online itself. So he has approached us for developing the website. He wants the following list
to be maintained and implemented for the website.
Customer Requirment


The website should be He wants the website to be navigated through
different pages like contact us, Products (Books, etc ), FAQ s, Order Tracking, Buying a product,
Feedback and Queries and the ADMIN. For the Products there should be information categorized
based on the categories like Books, Magazines, Files, CD s, DVD s, Utilities like Pen, Pencil, Paper,
Sketches, etc , and the sub categories based on the Publisher, type of the Products (like for books
novel, Magazine, etc ., for CD s readable or re writable, etc and similarly is the case with the other
products) Also for the products like books, CD s, DVD etc . the details like the manufacturer, price, and
the type of the product (like for CD s it will be readable or rewritable) should be indicated For the
Books like Novels, Preparation books like learning vocabulary, Genera Knowledge etc, the brief
description is to be included (like What is the book all about and for what it is used, Author Name,
Publisher Name, Release Date,Version, etc .) The products to be assigned with a unique seven digit
code, which will be as follows :

1. The Category of the Products (like Book, Magazine, Files, CD s, DVD s, etc utilities etc ) are to be
assigned with the Unique 2 digit alpha numeric code (first being Alphabet and the second one being
the Numeric digit).

2. The subcategory of the Products are to be assigned with a unique 5 DigitCode (First three Digits
being the first three acronyms of the Manufacturer and the remaining two being the Numeric digit) so
as to separate the different products being manufactured by a single manufacturer (like if a
manufacturer Ab Cd manufactures products X and Y , then the Code for X can be AC001 and for Y it can
be AC002 , where AC0 is representing the manufacturer, AC being the first two acronyms of the
manufacturer and the digit zero being added as the third one, as the manufacturer is having only two
acronyms, and the remaining two will be the numeric order, which can be in the order you maintain
the list of the products of that manufacturer). The details of the Products should be easily inserted,
updated and deleted. The admin alone will be able to insert, update or delete a product. So there
should be a login for the Admin.

When one places the order, the order number is to be auto-generated and thecode will be a unique 8
digit code, which will depend on the serial order of thereceipt of the booking (order placed).On the
Order Tracking Page there should be two links, one is to track the statusof the order and the other is to
cancel or update the order.

Also one can track the order through the Order Tracking link in the Navigationbar. Also in this page
alone one can cancel or update an order based on theconditions applicable.
And One can provide a feedback and also can post their queries through Onlinethrough the Link
Feedback and Queries in the navigation bar.In the Feedback and Queries and the Order Form (available
when a product is chosen for placing an order i.e., Buy a Product page) page the Email id will betaken
for further conversation.

When an Order is to be Placed, i.e., in the order form, the following Message is tobe displayed Apart
from the Product Charges, the Delivery charges will be Nil, if<3 KMs and if >3K Ms is as per the
Delivery charges based on the type of thedelivery chosen. As per the orders received, the customer
details is to be maintained so as to track the details of the orders placed by that customer and as to
know the statusof the order.

The payment is of three types

1. Payment before delivery (Note : where the customer need to send a Demand Draft of the total bill
so as to receive the order)

2. Payment after Delivery (Note : Payment to be done at the time of receipt of the product). It can be
done in two ways, either payment through cash or payment through cheque.

3. Online Payment (Note : This payment is through the Credit Card, and the order will be dispatched
only after the payment is being processed by the respective bank)

The FAQ s Should consist the Following :

1. Will there be any charges for the delivery apart from the products ordered?

2. How many days will it take to deliver the order? (Ans : Depends on the Order, Quantity and Stock
and as well on the payment type chosen, as if the payment option chosen is payment before delivery,
then the order will only be dispatched after the receipt of the payment.)

3. What if the order delivered is not in proper condition? (Ans : If the order delivered is improper, it will
be replace with the other)

4. Can an Order be cancelled? If yes, will there be any charges? (Ans : Yes, but if cancelled with in 24
Hrs. there will be no charges, but if cancelled after 24 Hrs. and if the Order is being dispatched the
Delivery charges for the to and fro is to be bared by the one who has ordered).

5. How can the payment be made? Financial

The charges for the delivery will be as per the distance and the quantity ordered and will be only the
delivery charges and the total price of the products ordered. In case of any cancellation, the charges
will be the delivery charges (to and fro) alone. Also the delivery charges are applicable only if the
distance is >3 KMs.


1. The Admin should alone be able to update or insert or delete the details of the products and the
order and as well that of the FAQ s.

2. The admin should alone be able to reply to the feedback and Queries that are posted by the

3. Auto generation of the unique 8 digit Order Number and based on the series of the order received.

4. The products to be assigned a unique seven digit code based on the manufacturer and the category
of the product and as well based on the serial order of entry of that particular product.

5. The feedback and query page to collect the feedback and queries of the customer.

6. The Order tracking page, where one can track the status of the order and as well cancel or update an

7. Creation, maintenance and updating database, which contains

Details of the Products.

Details of the Manufacturers.

Details of the stock available.

Details Orders (included order details and the Delivery details).

Details of the Payments based on the Order and Products and the

Distance of delivery.

8. The billing for the order is to be calculated taking into account the Order Quantity, type.
I have to decide to create a .Net based website according to customer requirement.

In this website there are several facilities according customer requirement-










This is user guide by using this user can easily access this web site.

Steps to access this software-

                                              *For Customers*

1:-If you want to visit this site you have to type URL of this site which is

3:-Now you can view this site on web browser and also can navigate using menu bars, hyperlinks and
link buttons.

4:-If you want to buy a product then you to create your own account on this site. You can create a new
account by using Join us option from main menu.

5:-If you are buying a product without logging in your account after clicking buy button on product
details page you will automatically navigate to login page.

6: If you want to buy a product after logging in your account you can use shopping link from your
account page.

7:-After selecting product you have to click on add to cart link after this you will find product details
page now click on Buy button now you will get a order page enter quantity, and address in related
page and select a payment mode then click on order button.

Now you will get an order confirmation page.

8:-You can also view and cancel your orders by using view cart link on your account page.

9:-You can also change your current password using change password link option on your account

10:-If you are forget your password you can use forget password link on login page

Here you have to enter your user name and after this you have to enter your security answer that you
have given at registration time then you will get you password.
                                          *For Administrator*

1:-You can access your account by using Admin link on main menu of home page.

Your user id is- admin

And password is –password@

2:-Now you can access your account, you can view customer’s orders and his queries

And also can cancel or delete their orders.

For develop this software several tools are used:-

Front End Development:- 3.5 as a technology and C# ac a programming language.

Java script as a scripting language.

Controls Used:-

Grid view for display the products.

Data Grid for display records.

Image for display image.

Panels for add other controls.

Menu controls for menu bar.

Back End Development:-

Sql Server-2005;

Mode- Windows Authentication

Database Connectivity:-

Ado .net 3.5 is used for database connectivity.
                                         ABOUT ASP.NET
ASP.NET is a web application framework developed and marketed by Microsoft to allow programmers
to build dynamic web sites, web applications and web services. It was first released in January 2002
with version 1.0 of the .NET Framework, and is the successor to Microsoft's Active Server Pages (ASP)
technology. ASP.NET is built on the Common Language Runtime (CLR), allowing programmers to write
ASP.NET code using any supported .NET language. The ASP.NET SOAP extension framework allows
ASP.NET components to process SOAP messages.

After the release of Internet Information Services 4.0 in 1997, Microsoft began researching possibilities
for a new web application model that would solve common complaints about ASP, especially with
regard to separation of presentation and content and being able to write "clean" codeMark Anders, a
manager on the IIS team, and Scott Guthrie, who had joined Microsoft in 1997 after graduating from
Duke University, were tasked with determining what that model would look like. The initial design was
developed over the course of two months by Anders and Guthrie, and Guthrie coded the initial
prototypes during the Christmas holidays in 1997.

The initial prototype was called "XSP"; Guthrie explained in a 2007 interview that, "People would
always ask what the X stood for. At the time it really didn't stand for anything. XML started with that;
XSLT started with that. Everything cool seemed to start with an X, so that's what we originally named
it." The initial prototype of XSP was done using Java, but it was soon decided to build the new platform
on top of the Common Language Runtime (CLR), as it offered an object-oriented programming
environment, garbage collection and other features that were seen as desirable features that
Microsoft's Component Object Model platform didn't support. Guthrie described this decision as a
"huge risk", as the success of their new web development platform would be tied to the success of the
CLR, which, like XSP, was still in the early stages of development, so much so that the XSP team was the
first team at Microsoft to target the CLR.

With the move to the Common Language Runtime, XSP was re-implemented in C# (known internally as
"Project Cool" but kept secret from the public), and the name changed to ASP+, as by this point the
new platform was seen as being the successor to Active Server Pages, and the intention was to provide
an easy migration path for ASP developers.

Mark Anders first demonstrated ASP+ at the ASP Connections conference in Phoenix, Arizona on May
2, 2000. Demonstrations to the wide public and initial beta release of ASP+ (and the rest of the .NET
Framework) came at the 2000 Professional Developers Conference on July 11, 2000 in Orlando, Florida.
During Bill Gates' keynote presentation, Fujitsu demonstrated ASP+ being used in conjunction with
COBOL, and support for a variety of other languages was announced, including Microsoft's new Visual
Basic .NET and C# languages, as well as Python and Perl support by way of interoperability tools
created by ActiveState.

Once the ".NET" branding was decided on in the second half of 2000, it was decided to rename ASP+ to
ASP.NET. Mark Anders explained on an appearance on The MSDN Show that year that, "The .NET
initiative is really about a number of factors, it's about delivering software as a service, it's about XML
and web services and really enhancing the Internet in terms of what it can do ... we really wanted to
bring its name more in line with the rest of the platform pieces that make up the .NET framework."

After four years of development, and a series of beta releases in 2000 and 2001, ASP.NET 1.0 was
released on January 5, 2002 as part of version 1.0 of the .NET Framework. Even prior to the release,
dozens of books had been written about ASP.NET, and Microsoft promoted it heavily as part of their
platform for web services. Guthrie became the product unit manager for ASP.NET, and development
continued apace, with version 1.1 being released on April 24, 2003 as a part of Windows Server 2003.
This release focused on improving ASP.NET's support for mobile devices.


ASP.NET web pages, known officially as "web forms", are the main building block for application
development. Web forms are contained in files with an ".aspx" extension; these files typically contain
static (X)HTML markup, as well as markup defining server-side Web Controls and User Controls where
the developers place all the required static and dynamic content for the web page. Additionally,
dynamic code which runs on the server can be placed in a page within a block <% -- dynamic code --
%>, which is similar to other web development technologies such as PHP, JSP, and ASP. With ASP.Net
Framework 2.0, Microsoft introduced a new code-behind model which allows static text to remain on
the .aspx page, while dynamic code remains in the .asp.cs page.

Code-behind model

Microsoft recommends dealing with dynamic program code by using the code-behind model, which
places this code in a separate file or in a specially designated script tag. Code-behind files typically have
names like MyPage.aspx.cs or MyPage.aspx.vb while the page file is MyPage.aspx (same filename as
the page file (ASPX), but with the final extension denoting the page language). This practice is
automatic in Microsoft Visual Studio and other IDEs. When using this style of programming, the
developer writes code to respond to different events, like the page being loaded, or a control being
clicked, rather than a procedural walk through the document.

ASP.NET's code-behind model marks a departure from Classic ASP in that it encourages developers to
build applications with separation of presentation and content in mind. In theory, this would allow a
web designer, for example, to focus on the design markup with less potential for disturbing the
programming code that drives it. This is similar to the separation of the controller from the view in
model-view-controller frameworks.


A directive is special instructions on how ASP.Net should process the page.] The most common
directive is <%@ Page %> which can specify many things, such as which programming language is used
for the server-side code.

Note that this sample uses code "inline", as opposed to code-behind.

<%@ Page Language="C#" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"


<script runat="server">

 protected void Page_Load(object sender, EventArgs e)


     Label1.Text = DateTime.Now.ToLongTimeString();



<html xmlns="">

<head runat="server">

 <title>Sample page</title>



 <form id="form1" runat="server">


     The current time is: <asp:Label runat="server" id="Label1" />




The above page renders with the Text "The current time is: " and the <asp:Label> Text is set with the
current time, upon render.

Code-behind solutions

"AutoEventWireup="true" %>

The above tag is placed at the beginning of the ASPX file. The CodeFile property of the @ Page directive
specifies the file (.cs or .vb) acting as the code-behind while the Inherits property specifies the Class the
Page derives from. In this example, the @ Page directive is included in SampleCodeBehind.aspx, then
SampleCodeBehind.aspx.cs acts as the code-behind for this page:

using System;

namespace Website


    public partial class SampleCodeBehind : System.Web.UI.Page


        protected void Page_Load(object sender, EventArgs e)


            Response.Write("Hello, world");




In this case, the Page_Load() method is called every time the ASPX page is requested. The programmer
can implement event handlers at several stages of the page execution process to perform processing.
User controls

User controls are encapsulations of sections of pages which are registered and used as controls in
ASP.NET. User controls are created as ASCX markup files. These files usually contain static (X)HTML
markup, as well as markup defining server-side web controls. These are the locations where the
developer can place the required static and dynamic content. A user control is compiled when its
containing page is requested and is stored in memory for subsequent requests. User controls have
their own events which are handled during the life of ASP.NET requests. An event bubbling mechanism
provides the ability to pass an event fired by a user control up to its containing page. Unlike an
ASP.NET page, a user control cannot be requested independently; one of its containing pages is
requested instead.

Custom controls

Programmers can also build custom controls for ASP.NET applications. Unlike user controls, these
controls don't have an ASCX markup file, having all their code compiled into a dynamic link library (DLL)
file. Such custom controls can be used across multiple web applications and Visual Studio projects
(which is not allowed with user controls). By using a Register directive, the control is loaded from the

Rendering technique

ASP.NET uses a visited composites rendering technique. During compilation, the template (.aspx) file is
compiled into initialization code which builds a control tree (the composite) representing the original
template. Literal text goes into instances of the Literal control class, and server controls are
represented by instances of a specific control class. The initialization code is combined with user-
written code (usually by the assembly of multiple partial classes) and results in a class specific for the
page. The page doubles as the root of the control tree.

Actual requests for the page are processed through a number of steps. First, during the initialization
steps, an instance of the page class is created and the initialization code is executed. This produces the
initial control tree which is now typically manipulated by the methods of the page in the following
steps. As each node in the tree is a control represented as an instance of a class, the code may change
the tree structure as well as manipulate the properties/methods of the individual nodes. Finally, during
the rendering step a visitor is used to visit every node in the tree, asking each node to render itself
using the methods of the visitor. The resulting HTML output is sent to the client.

After the request has been processed, the instance of the page class is discarded and with it the entire
control tree. This is a source of confusion among novice ASP.NET programmers who rely on class
instance members that are lost with every page request/response cycle.

State management
ASP.NET applications are hosted by a web server and are accessed using the stateless HTTP protocol.
As such, if an application uses stateful interaction, it has to implement state management on its own.
ASP.NET provides various functions for state management. Conceptually, Microsoft treats "state" as
GUI state. Problems may arise if an application needs to keep track of "data state"; for example, a
finite state machine which may be in a transient state between requests (lazy evaluation) or which
takes a long time to initialize. State management in ASP.NET pages with authentication can make Web
scraping difficult or impossible.

Application state

Application state is held by a collection of shared user-defined variables. These are set and initialized
when the Application_OnStart event fires on the loading of the first instance of the application and are
available until the last instance exits. Application state variables are accessed using the Applications
collection, which provides a wrapper for the application state variables. Application state variables are
identified by name.

Session state

Server-side session state is held by a collection of user-defined session variables that are persistent
during a user session. These variables, accessed using the Session collection, are unique to each session
instance. The variables can be set to be automatically destroyed after a defined time of inactivity even
if the session does not end. Client-side user session is maintained by either a cookie or by encoding the
session ID in the URL itself.

ASP.NET supports three modes of persistence for server-side session variables:

In-Process Mode

  The session variables are maintained within the ASP.NET process. This is the fastest way; however, in
this mode the variables are destroyed when the ASP.NET process is recycled or shut down.

ASPState Mode

  ASP.NET runs a separate Windows service that maintains the state variables. Because state
management happens outside the ASP.NET process, and because the ASP.NET engine accesses data
using .NET Remoting, ASPState is slower than In-Process. This mode allows an ASP.NET application to
be load-balanced and scaled across multiple servers. Because the state management service runs
independently of ASP.NET, the session variables can persist across ASP.NET process shutdowns.
However, since session state server runs as a single instance, it is still a single point of failure for
session state. The session-state service cannot be load-balanced, and there are restrictions on types
that can be stored in a session variable.

SqlServer Mode

State variables are stored in a database, allowing session variables to be persisted across ASP.NET
process shutdowns. The main advantage of this mode is that it allows the application to balance load
on a server cluster, sharing sessions between servers. This is the slowest method of session state
management in ASP.NET.

View state

View state refers to the page-level state management mechanism, utilized by the HTML pages emitted
by ASP.NET applications to maintain the state of the web form controls and widgets. The state of the
controls is encoded and sent to the server at every form submission in a hidden field known as
__VIEWSTATE. The server sends back the variable so that when the page is re-rendered, the controls
render at their last state. At the server side, the application may change the viewstate, if the
processing requires a change of state of any control. The states of individual controls are decoded at
the server, and are available for use in ASP.NET pages using the ViewState collection.

The main use for this is to preserve form information across postbacks. View state is turned on by
default and normally serializes the data in every control on the page regardless of whether it is actually
used during a postback. This behavior can (and should) be modified, however, as View state can be
disabled on a per-control, per-page, or server-wide basis.

Developers need to be wary of storing sensitive or private information in the View state of a page or
control, as the base64 string containing the view state data can easily be de-serialized. By default, View
state does not encrypt the __VIEWSTATE value. Encryption can be enabled on a server-wide (and
server-specific) basis, allowing for a certain level of security to be maintained.

Server-side caching

ASP.NET offers a "Cache" object that is shared across the application and can also be used to store
various objects. The "Cache" object holds the data only for a specified amount of time and is
automatically cleaned after the session time-limit elapses.


Other means of state management that are supported by ASP.NET are cookies, caching, and using the
query string.

Template engine

When first released, ASP.NET lacked a template engine. Because the .NET framework is object-oriented
and allows for inheritance, many developers would define a new base class that inherits from
"System.Web.UI.Page", write methods there that render HTML, and then make the pages in their
application inherit from this new class. While this allows for common elements to be reused across a
site, it adds complexity and mixes source code with markup. Furthermore, this method can only be
visually tested by running the application - not while designing it. Other developers have used include
files and other tricks to avoid having to implement the same navigation and other elements in every
ASP.NET 2.0 introduced the concept of "master pages", which allow for template-based page
development. A web application can have one or more master pages, which, beginning with ASP.NET
2.0, can be nested. Master templates have place-holder controls, called ContentPlaceHolders to
denote where the dynamic content goes, as well as HTML and JavaScript shared across child pages.

Child pages use those ContentPlaceHolder controls, which must be mapped to the place-holder of the
master page that the content page is populating. The rest of the page is defined by the shared parts of
the master page, much like a mail merge in a word processor. All markup and server controls in the
content page must be placed within the ContentPlaceHolder control.

When a request is made for a content page, ASP.NET merges the output of the content page with the
output of the master page, and sends the output to the user.

The master page remains fully accessible to the content page. This means that the content page may
still manipulate headers, change title, configure caching etc. If the master page exposes public
properties or methods (e.g. for setting copyright notices) the content page can use these as well.
                                             .NET TOOLS

Windows Forms Label controls are used to display text or images that cannot be edited by the user.
They are used to identify objects on a form — to provide a description of what a certain control will do
if clicked, for example, or to display information in response to a runtime event or process in your
application. For example, you can use Labels to add descriptive captions to text boxes, list boxes,
combo boxes, and so on. You can also write code that changes the text displayed by a label in response
to events at run time.


The Textbox server control is an input control that lets the user enter text. By default, the Text Mode
property is set to Single Line, which creates a text box with only one line. You can also set the property
to MultiLine or Password. MultiLine creates a text box with more than one line. Password creates a
single-line     text     box      that     masks      the     value      entered      by     the     user.
The display width of the text box is determined by its Columns property. If the text box is a multiline
text box, the display height is determined by the Rows property.


The Windows Forms Button control allows the user to click it to perform an action. The Button control
can display both text and images. When the button is clicked, it looks as if it is being pushed in and
released. The Windows Forms Button control allows the user to click it to perform an action. When the
button is clicked, it looks as if it is being pushed in and released. Whenever the user clicks a button, the
Click event handler is invoked. You place code in the Click event handler to perform any action you
choose.A Windows Forms button can be selected in the following ways:Use a mouse to click the
button.Invoke the button's Click event in code.Move the focus to the button by pressing the TAB key,
and then choose the button by pressing the SPACEBAR or ENTER..Press the access key (ALT + the
underlined letter) for the button.If the button is the "accept" button of the form, pressing ENTER
chooses the button, even if another control has the focus — except if that other control is another
button, a multi-line text box, or a custom control that traps the enter key. If the button is the "cancel"
button of the form, pressing ESC chooses the button, even if another control has the focus.


The Windows Forms Combo Box control is used to display data in a drop-down combo box. By default,
the Combo Box control appears in two parts: the top part is a text box that allows the user to type a list
item. The second part is a list box that displays a list of items from which the user can select one. The
Selected Index property returns an integer value that corresponds to the selected list item. You can
programmatically change the selected item by changing the Selected Index value in code; the
corresponding item in the list will appear in the text box portion of the combo box. If no item is
selected, the Selected Index value is -1. If the first item in the list is selected, then the Selected Index
value is 0. The Selected Item property is similar to Selected Index, but returns the item itself, usually a
string value. The Items count property reflects the number of items in the list, and the value of the
Items. Count property is always one more than the largest possible Selected Index value because
Selected Index is zero-based.


Windows Forms Radio Button controls present a set of two or more mutually exclusive choices to the
user. While radio buttons and check boxes may appear to function similarly, there is an important
difference: when a user selects a radio button, the other radio buttons in the same group cannot be
selected as well. In contrast; any number of check boxes can be selected. Defining a radio button group
tells the user, "Here is a set of choices from which you can choose one and only one." When a Radio
Button control is clicked, its checked property is set to true and the Click event handler is called. The
Checked Changed event is raised when the value of the Checked property changes. If the Auto Check
property is set to true (the default), when the radio button is selected all others in the group are
automatically cleared. This property is usually only set to false when validation code is used to make
sure the radio button selected is an allowable option. The text displayed within the control is set with
the Text property, which can contain access key shortcuts. The Radio Button control can appear like a
command button, which appears to have been depressed if selected, if the Appearance property is set
to Appearance Button.


Windows Forms Panel controls are used to provide an identifiable grouping for other controls.
Typically, you use panels to subdivide a form by function. For example, you may have an order form
that specifies mailing options such as which overnight carrier to use. Grouping all options in a panel
gives the user a logical visual cue. At design time all the controls can be moved easily — when you
move the Panel control, all its contained controls move, too. The controls grouped in a panel can be
accessed through its Controls property. The Panel control is similar to the Group Box control; however,
only the Panel control can have scroll bars, and only the Group Box control displays a captionTo display
scroll bars, set the AutoScroll property to true. You can also customize the appearance of the panel by
setting the Back Color, Background Image, and Border Style properties.


Windows Forms Group Box controls are used to provide an identifiable grouping for other controls.
Typically, you use group boxes to subdivide a form by function. For example, you may have an order
form that specifies mailing options such as which overnight carrier to use. Grouping all options in a
group box gives the user a logical visual cue, and at design time all the controls can be moved easily —
when you move the single Group Box control, all its contained controls move, too. The Group Box
control is similar to the Panel control; however, only the Group Box control displays a caption, and only
the Panel control can have scroll bars.The group box's caption is defined by the Text property.

A Windows Forms List Box control displays a list of items from which the user can select one or more. If
the total number of items exceeds the number that can be displayed, a scroll bar is automatically
added to the List Box control when the Multicolumn property is set to true, the list box displays items
in multiple columns and a horizontal scroll bar appears. When the Multicolumn property is set to false,
the list box displays items in a single column and a vertical scroll bar appears. When ScrollAlwaysVisible
is set to true, the scroll bar appears regardless of the number of items. The Selection Mode property
determines how many list items can be selected at a time. The Selected Index property returns an
integer value that corresponds to the first selected item in the list box. You can programmatically
change the selected item by changing the Selected Index value in code; the corresponding item in the
list will appear highlighted on the Windows Form. If no item is selected, the Selected Index value is -1.
If the first item in the list is selected, then the SelectedIndex value is 0. When multiple items are
selected, the SelectedIndex value reflects the selected item that appears first in the list. The
SelectedItem property is similar to SelectedIndex, but returns the item itself, usually a string value. The
Items count property reflects the number of items in the list, and the value of the Items. Count
property is always one more than the largest possible Selected Index value because Selected Index is


The Windows Forms Picture Box control is used to display graphics in bitmap, GIF, JPEG, metafile, or
icon format. The picture that is displayed is determined by the Image property, which can be set at run
time or at design time. The Size Mode property controls how the mage and control fit with each other.
If you use the Windows Forms Picture Box control on a form, you can set the Size Mode property on it

Set PictureBox.SizeMode to Normal (the default), Auto Size,Center Image or Stretch Image.

Normal means that the image is placed in the control's upper left corner; if the image is larger than the
control, its lower and right edges are clipped. Center Image means that the image is centered within
the control; if the image is larger than the control, the picture's outside edges are clipped.

Auto Size means that the size of the control is adjusted to the size of the image.

Stretch Image is the reverse, and means that the size of the image is adjusted to the size of the control.
                                            .NET FRAMEWORK

This is a loaded question, but what it really comes down to is that .NET means different things

to different people. Much of what Microsoft is now offering has the .NET name somewhere in

its title, but what .NET means really depends on whom you ask. The official one-line answer is

that .NET is Microsoft’s platform for XML Web services.

Microsoft’s .NET Framework is a new computing platform built with the Internet in mind, but

without sacrificing the traditional desktop application platform. The Internet has been around

for a number of years now, and Microsoft has been busy developing technologies and tools

that are totally focused on it. These earlier technologies, however, were built on Windows

DNA (Distributed interNet Applications Architecture), which was based on COM (Component

Object Model). Microsoft’s COM was in development many years before the Internet became

the force that we know today. Consequently, the COM model has been built upon and added to

in order to adapt it to the changes brought about by the Internet.

With the .NET Framework, Microsoft built everything from the ground up with Internet

integration as the goal. Building a platform from the ground up also allowed the .NET

Framework developers to look at the problems and limitations that inhibited application

development in the past and to provide the solutions that were needed to quickly speed past

these barriers.

The .NET Framework

.NET is a collection of tools, technologies, and languages that all work together in a

framework to provide the solutions that are needed to easily build and deploy truly robust

enterprise applications. These .NET applications are also able to easily communicate with one

another and provide information and application logic, regardless of platforms and languages.

Sounds pretty outstanding, doesn’t it?

Figure shows an overview of the structure of the .NET Framework.
Figure : The .NET Framework.

The first thing that you should notice when looking at this diagram is that the .NET

Framework sits on top of the operating system. Presently, the operating systems that can take

the .NET Framework include Windows XP, Windows 2000, and Windows NT. There has also

been a lot of talk about .NET being ported over by some third-party companies so that a

majority of the .NET Framework could run on other platforms as well.

NOTE: The support for the .NET Framework on Windows NT is limited to functioning only as a client.

Windows NT will not support the Framework as a server.

At the base of the .NET Framework is the Common Language Runtime (CLR). The CLR is

the engine that manages the execution of the code.

The next layer up is the .NET Framework Base Classes. This layer contains classes, value

types, and interfaces that you will use often in your development process. Most notably within

the .NET Framework Base Classes is ADO.NET, which provides access to and management

of data.

The third layer of the framework is ASP.NET and Windows Forms. ASP.NET should not be

viewed as the next version of Active Server Pages after ASP 3.0, but as a dramatically new

shift in Web application development. Using ASP.NET, it’s now possible to build robust Web

applications that are even more functional than Win32 applications of the past. This was

always quite difficult to do in the stateless nature of the Internet, but ASP.NET offers a

number of different solutions to overcome the traditional limitations on the types of

applications that were possible. The ASP.NET section of the .NET Framework is also where

the XML Web services model resides.
                                  MICROSOFT INTODUCES C#
C# (pronounced "see sharp") is a multi-paradigm programming language encompassing imperative,
declarative, functional, generic, object-oriented (class-based), and component-oriented programming
disciplines. It was developed by Microsoft within the .NET initiative and later approved as a standard
by Ecma (ECMA-334) and ISO (ISO/IEC 23270). C# is one of the programming languages designed for
the Common Language Infrastructure.

C# is intended to be a simple, modern, general-purpose, object-oriented programming language. Its
development team is led by Anders Hejlsberg. The most recent version is C# 4.0, which was released
on April 12, 2010.

The ECMA standard lists these design goals for C#:

C# language is intended to be a simple, modern, general-purpose, object-oriented programming

The language, and implementations thereof, should provide support for software engineering
principles such as strong type checking, array bounds checking, detection of attempts to use
uninitialized variables, and automatic garbage collection. Software robustness, durability, and
programmer productivity are important.

The language is intended for use in developing software components suitable for deployment in
distributed environments.

Source code portability is very important, as is programmer portability, especially for those
programmers already familiar with C and C++.

Support for internationalization is very important.

C# is intended to be suitable for writing applications for both hosted and embedded systems, ranging
from the very large that use sophisticated operating systems, down to the very small having dedicated

Although C# applications are intended to be economical with regard to memory and processing power
requirements, the language was not intended to compete directly on performance and size with C or
assembly language.

C-sharp musical note (left)

The name "C sharp" was inspired by musical notation where a sharp indicates that the written note
should be made a semitone higher in pitch.[8] This is similar to the language name of C++, where "++"
indicates that a variable should be incremented by 1.

Due to technical limitations of display (standard fonts, browsers, etc.) and the fact that the sharp
symbol (♯ , U+266F, MUSIC SHARP SIGN) is not present on the standard keyboard, the number sign (#,
U+0023, NUMBER SIGN) was chosen to represent the sharp symbol in the written name of the
programming language. This convention is reflected in the ECMA-334 C# Language Specification.
However, when it is practical to do so (for example, in advertising or in box art), Microsoft uses the
intended musical symbol.

The "sharp" suffix has been used by a number of other .NET languages that are variants of existing
languages, including J# (a .NET language also designed by Microsoft which is derived from Java 1.1), A#
(from Ada), and the functional F#. The original implementation of Eiffel for .NET was called Eiffel#, a
name since retired since the full Eiffel language is now supported. The suffix has also been used for
libraries, such as Gtk# (a .NET wrapper for GTK+ and other GNOME libraries), Cocoa# (a wrapper for
Cocoa) and Qt# (a .NET language binding for the Qt toolkit).


During the development of the .NET Framework, the class libraries were originally written using a
managed code compiler system called Simple Managed C (SMC). In January 1999, Anders Hejlsberg
formed a team to build a new language at the time called Cool, which stood for "C-like Object Oriented
Language". Microsoft had considered keeping the name "Cool" as the final name of the language, but
chose not to do so for trademark reasons. By the time the .NET project was publicly announced at the
July 2000 Professional Developers Conference, the language had been renamed C#, and the class
libraries and ASP.NET runtime had been ported to C#.

C#'s principal designer and lead architect at Microsoft is Anders Hejlsberg, who was previously involved
with the design of Turbo Pascal, Embarcadero Delphi (formerly CodeGear Delphi and Borland Delphi),
and Visual J++. In interviews and technical papers he has stated that flaws in most major programming
languages (e.g. C++, Java, Delphi, and Smalltalk) drove the fundamentals of the Common Language
Runtime (CLR), which, in turn, drove the design of the C# language itself.

James Gosling, who created the Java programming language in 1994, and Bill Joy, a co-founder of Sun
Microsystems, the originator of Java, called C# an "imitation" of Java; Gosling further claimed that "[C#
is] sort of Java with reliability, productivity and security deleted." Klaus Kreft and Angelika Langer
(authors of a C++ streams book) stated in a blog post that "Java and C# are almost identical
programming languages. Boring repetition that lacks innovation," "Hardly anybody will claim that Java
or C# are revolutionary programming languages that changed the way we write programs," and "C#
borrowed a lot from Java - and vice versa. Now that C# supports boxing and unboxing, we'll have a very
similar feature in Java." Anders Hejlsberg has argued that C# is "not a Java clone" and is "much closer
to C++" in its design.
C# used to have a mascot called Andy (named after Anders Hejlsberg). It was retired on 29 Jan 2004.

            C#2.0                 C#3.0                   C#4.0                  C#5.0(PLANNED)
FEATURES    1.Generics            1.Implicitly    typed   1.Dynamic binding      1.Asynchronous
ADDED       2.Partial types       variables               2.Named         and    methods
            3.Anonymous           2.Implicitly    typed   optional arguments     2.Compiler As        a
            methods               arrays                  3.Generic co- and      Service
            4.Iterators           3.Anonymous types       contravariance
            5.Nullable types      4.Extension methods
                                  5.Query expressions
                                  7.Expression trees
                               MICROSOFT SQL SERVER 2005

The code base for MS SQL Server (prior to version 7.0) originated in Sybase SQL Server, and was
Microsoft's entry to the enterprise-level database market, competing against Oracle, IBM, and, later,
Sybase. Microsoft, Sybase and Ashton-Tate originally teamed up to create and market the first version
named SQL Server 1.0 for OS/2 (about 1989) which was essentially the same as Sybase SQL Server 3.0
on Unix, VMS, etc. Microsoft SQL Server 4.2 was shipped around 1992 (available bundled with IBM
OS/2 version 1.3). Later Microsoft SQL Server 4.21 for Windows NT was released at the same time as
Windows NT 3.1. Microsoft SQL Server v6.0 was the first version designed for NT, and did not include
any direction from Sybase.

About the time Windows NT was released, Sybase and Microsoft parted ways and each pursued their
own design and marketing schemes. Microsoft negotiated exclusive rights to all versions of SQL Server
written for Microsoft operating systems. Later, Sybase changed the name of its product to Adaptive
Server Enterprise to avoid confusion with Microsoft SQL Server. Until 1994, Microsoft's SQL Server
carried three Sybase copyright notices as an indication of its origin.

Since parting ways, several revisions have been done independently. SQL Server 7.0 was a rewrite from
the legacy Sybase code. It was succeeded by SQL Server 2000, which was the first edition to be
launched in a variant for the IA-64 architecture.

In the ten years since release of Microsoft's previous SQL Server product (SQL Server 2000),
advancements have been made in performance, the client IDE tools, and several complementary
systems that are packaged with SQL Server 2005. These include: an ETL tool (SQL Server Integration
Services or SSIS), a Reporting Server, an OLAP and data mining server (Analysis Services), and several
messaging technologies, specifically Service Broker and Notification Services.

SQL Server 2005

SQL Server 2005 (codenamed Yukon), released in October 2005, is the successor to SQL Server 2000. It
included native support for managing XML data, in addition to relational data. For this purpose, it
defined an xml data type that could be used either as a data type in database columns or as literals in
queries. XML columns can be associated with XSD schemas; XML data being stored is verified against
the schema. XML is converted to an internal binary data type before being stored in the database.
Specialized indexing methods were made available for XML data. XML data is queried using XQuery;
Common Language Runtime (CLR) integration was a main features with this edition, enabling one to
write SQL code as Managed Code by the CLR. SQL Server 2005 added some extensions to the T-SQL
language to allow embedding XQuery queries in T-SQL. In addition, it also defines a new extension to
XQuery, called XML DML, that allows query-based modifications to XML data. SQL Server 2005 also
allows a database server to be exposed over web services using TDS packets encapsulated within SOAP
(protocol) requests. When the data is accessed over web services, results are returned as XML.

For relational data, T-SQL has been augmented with error handling features (try/catch) and support for
recursive queries with CTEs (Common Table Expressions). SQL Server 2005 has also been enhanced
with new indexing algorithms, syntax and better error recovery systems. Data pages are checksummed
for better error resiliency, and optimistic concurrency support has been added for better performance.
Permissions and access control have been made more granular and the query processor handles
concurrent execution of queries in a more efficient way. Partitions on tables and indexes are supported
natively, so scaling out a database onto a cluster is easier. SQL CLR was introduced with SQL Server
2005 to let it integrate with the .NET Framework.

SQL Server 2005 introduced "MARS" (Multiple Active Results Sets), a method of allowing usage of
database connections for multiple purposes.

SQL Server 2005 introduced DMVs (Dynamic Management Views), which are specialized views and
functions that return server state information that can be used to monitor the health of a server
instance, diagnose problems, and tune performance.

SQL Server 2005 introduced Database Mirroring, but it was not fully supported until the first Service
Pack release (SP1). In the initial release (RTM) of SQL Server 2005, database mirroring was available,
but unsupported. In order to implement database mirroring in the RTM version, you had to apply trace
flag 1400 at startup. Database mirroring is a high availability option that provides redundancy and
failover capabilities at the database level. Failover can be performed manually or can be configured for
automatic failover. Automatic failover requires a witness partner and an operating mode of
synchronous (also known as high-safety or full safety).
              DATABASE DESIGN
              DATABASE NAME:-JOBS

TABLE1:JOBS                         TABLE2:JOBS
_ADDPRODU                           _CONTACTUS


TABLE3:JOBS        JOBS               TABLE4:JOBS
  _JOINUS                             _PRODUCTB
  IMAGE                                    _CODE


PRODUCT_DES                             PRODUCT_PR
  CRIPTION                                  ICE
    AME         ONTACTUS         MAIL


FIRST_NAME                       SECOND_NAME

   AGE                             GENDER

 ADDRESS_1                         ADDRESS_2

   CITY                              STATE

 COUNTRY                           PHONE_1

PHONE_2                            EMAIL_ID

To top