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.
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. [2]
2.1.1.2 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). 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. [3]
2.1.1.3 Directives:
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.
2.1.1.4 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. [4]
2.1.1.5 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 project [5] .
2.1.1.6 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 statefull 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"; initialize. State management in ASP.NET pages with authentication can make Web scraping difficult or impossible [6] .
2.1.1.7 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.
2.1.1.8 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 [7] .
2.1.1.9 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 [8] .
2.1.1.10 ASP State 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 Remoteing, 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 one instance, it is still one 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 [9] .
2.1.1.11 SQL Server 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 [10] .
2.1.2 Performance:
ASP.NET aims for performance benefits over other script-based technologies (including Classic ASP) by compiling the server-side code to one or more DLL files on the web server. This compilation happens automatically the first time a page is requested (which means the developer need not perform a separate compilation step for pages). This feature provides the ease of development offered by scripting languages with the performance benefits of a compiled binary. However, the compilation might cause a noticeable but short delay to the web user when the newly-edited page is first requested from the web server, but won't again unless the page requested is updated further.
The ASPX and other resource files are placed in a virtual host on an Internet Information Services server (or other compatible ASP.NET servers; see other implementations, below). The first time a client requests a page, the .NET Framework parses and compiles the file(s) into a .NET assembly and sends the response; subsequent requests are served from the DLL files. By default ASP.NET will compile the entire site in batches of 1000 files upon first request. If the compilation delay is causing problems, the batch size or the compilation strategy may be tweaked.
Developers can also choose to pre-compile their "code behind" files before deployment, using MS Visual Studio, eliminating the need for just-in-time compilation in a production environment. This also eliminates the need of having the source code on the web server [11] .
2.1.3 Difference between ASP & ASP.Net
ASP (Active Server Pages) is Microsoft's early foray into the server side scripting engines that were meant to dynamically create web pages as they are needed. An example of a dynamically created web page is an on-line calculator where you input two numbers and after you're done it presents you with the sum. Creating that in HTML would require a lot of pages, one for each possible result. But with ASP, you can write a single short script that can handle this easily. ASP has seen a fair share in the internet creating pages on the fly. But on January 5, 2002 Microsoft released the successor of ASP called ASP.NET.
ASP.NET aims to make the transition to web programming easier for those who are already knowledgeable in creating programs for Windows. ASP.NET also offered some improvements over its predecessor. Here are some of the advantages of ASP.NET over ASP:
ASP.NET takes advantage of the additional features in the .NET library allowing its pages to be coded in any of the other languages included in .NET.
ASP.NET also has a very wide array of libraries and controls that can be used to build a web page quickly and easily. It also had a lot of the commonly used templates like menus.
Error Handling has also been improved compared to ASP by making use of the try-catch blocks and exception handling.
A compiled code format allowed ASP.NET scripts to perform faster during execution since it doesn't need to be compiled by the server when called. It also meant a lot less errors when it is already deployed since errors were easily found when you attempt to compile a script.
One of the best improvements of ASP.NET is the use of a WYSIWYG (What You See Is What You Get) control creation system, that gave developers a GUI that helps them gain a quick visual feedback on the look of their page [12] .
2.2 Visual Basic.NET
Visual Basic .NET (VB.NET) is an object-oriented computer programming language that can be viewed as an evolution of the classic Visual Basic (VB) which is implemented on the .NET Framework. Microsoft currently supplies two major implementations of Visual Basic: Microsoft Visual Studio, which is commercial software and Microsoft Visual Studio Express, which is free of charge.
Visual Basic... A name everybody knows for a rich, easy and GUI based programming language, making each & every task easier and improves programmer's productivity. VB has won the best RAD (Rapid Application Development) Tool award for three times and still keeping itself at top [13] .
2.2.1 Features
Some new features of VB.NET
Full support for object oriented programming.
Structured error handling capabilities.
Access to .NET Framework.
Powerful unified Integrated Development Environment (IDE).
Inherent support for XML & Web Services.
Better windows applications with Windows Forms.
New Console capabilities of VB.NET.
New Web capabilities with Web Forms.
Immense power of tools & controls (including Server Controls).
Interpretability with other .NET compiled languages.
2.2.3 Difference between VB & VB.Net
1) VB.net is object oriented.
2) VB.net supports exception handling.
3) VB.net is strongly typed.
4) VB. net supports multithreading.
5) VB.net now has console applications
VB:
1)object based language
2) does not support inheritance
3)does not support for disconnected architecture
4) no interoperability function
5) no support for threading
6) no powerful exceptional handling mechanism
7) does not support console based applications
8) cannot use more than one version of com objects, this is dll error.
9) Does not support threadingVB.NET:
10) object oriented language
11) supports inheritance
12) supports disconnected data architecture
13) it supports interoperability
14) uses managed code
15) Supports threading
16) Powerful exceptional handling
17) More than one version of dll is supported.
18) Vb.net is fully object orientated, high security, used in mobile application [14] .
2.3 Difference between ASP.Net & VB.Net
Asp.net is simple a library that makes it easy for you to create web applications that run against the .NET runtime (similar to the java runtime). Vb.net is a language that compiles against the common language runtime, like C#. Any .NET compliant language can use the asp.net libraries to create web applications [15] .
2.4 Microsoft Visual Studio
It is an Integrated Environment developed by Microsoft. This software/tool is used to develop the console and GUI applications. Using this tool we are able to create the windows application, web sites, web applications, and web services. We use them in both native code together with managed code for all the platforms, that supported by Microsoft Windows.
Visual Studio includes a code editor as well as code refectory. Built in tools include designer for building GUI applications, web designer, class designer, and data base schema designer.
Visual Studio supports different type of programming languages by means of language services. Visual studio specify built-in languages include C/C++ (via Visual C++), VB.NET (via Visual Basic .NET), C# (via Visual C#), and F# (as of Visual Studio 2010).
Except these of languages it also supports some other languages XML/XSLT, HTML/XHTML, JavaScript and CSS [16] .
2.4.1 FEATURES
2.4.1.1 CODE EDITOR
It supports syntax highlighting and code completion and also uses intellisence for not only variables, functions and methods but also language constructs like loops and queries. Intellisence support XML and for Cascading Style sheets and java scripts when developing web sites and web applications. Visual Studio has features that have a background compilation. As code is being written, visual studio compiles it in background and provide feedback about syntax and compilation error.
2.4.1.2 DEBUGGER
It works both as a source -level debugger and as a machine -level debugger. Debugger can work with both managed code as well as native code and can be used for debugging applications that was be written in any languages. This also creates memory dumps and then loads them later for debugging. The debugger supports Edit and Continue, i.e., it allows code to be edited as it is being debugged.
2.4.1.3 DESIGNER
It is a host of visual designer to aid in the development of applications. These tools are:
2.4.1.3.1 Windows Forms Designer
This form is used for create or built a GUI applications using windows forms. Windows form designer includes buttons, progress bars, labels, layout containers and other controls these are called a palette of UI widgets and controls. These controls can be dragged and dropped on a form surface. We can control the layout by housing the controls inside other containers.
2.4.1.3.2 WPF Designer
This was introduced with Microsoft with visual studio 2008. Its code named is cider.
It supports all WPF functionality, which includes data binding and automatic lay out management. It generates XAML code for the UI, The XAML code is linked with code using a code-behind model.
2.4.1.3.3 Web designer/development
Visual Studio also includes a web-site editor and designer that provide facilities to a designer by dragging and dropping widgets. It is used for developing ASP.NET code.
2.4.1.3.4 Class Designer
The class Designer id used to creator and edit the classes using UML modeling. By using class designer it can generate C# and VB.NET code outlines for the classes and Methods.
2.4.1.3.5 Data Designer
This can be used to graphically edit database schemas, including typed tables, primary and foreign keys and constraints. It is also be used to design queries from the graphical view.
2.4.1.3.6 Mapping Designer
The mapping designer is used by LINQ to SQL to design the mapping database schemas and the classes that encapsulate the data.
2.4.1.3.10 Other Tools
Open Tabs Browser
Properties Editor
Object Browser
Solution Explorer
Team Explorer
Data Explorer
Server Explorer
Dotfuscator Software Services Community Edition
Text Generation Framework
2.5 SOTHINK DHTML MENU
It is an easy, simple and productive drop down menu builder to create friendly drop down menu, JavaScript menu for web navigation without writing a single line of code. This includes rich templates and preset styles let you create professional DHTML menus by spending a little amount of time. The menu appearance can be fully customized [17] .
2.5.1 FEATURES
2.5.1.1Perfect Compatibility
it is fully cross-browser compatibility
it is FREE integrated with dreamweaver, Frontpage, Expression Web and Adobe GoLive as add-ins/extensions.
It might have Data driven java script menus with ASP, PHP, JSP, ASP.NET, ColdFusion and more.
2.5.1.2 Functional Menu
TAB MENU displays navigation items as tabs.
KEYBOARD NAVIGATION FUNCTION controls DHTML menu by keyboard, such as Press Alt+F2 to launch
By this we can create a Multi-Column menus or Multi-Row menus Available.
CROSS-FRAME MENUS that is work for frame-based web site like common frameset, nested frames or iframes.
Highlight menu auto-highlight DHTML navigation menu when the current page is in use.
Scroll Menu vertically or horizontally
100% WIDTH SPAN MENUS spans menu width of the web page; auto-adjust each top menu item.
2.5.1.3 Customizable Property
FULLY CUSTOMIZE PROPERTIES Like font, icon, background, border, cursor, tool tip, surround, effects, alignment, transparency, size, etc.
Freely select and edit images as icon, arrow, background and separator from IMAGE LIBRARY and BACKGROUND LIBRARY.
Easily adjust the color, tint & brightness to edit the image or choose corners and edges separately for surround.
Edit and save images as custom resources in image library and background library.
2.6 ADOBE DREAMWEAVER
It is a web development application, created by Macromedia. This can b installed on both Mac and Windows operating Systems. Recent versions have included support for web technologies such as CSS, JavaScript, and server side scripting languages ASP, JSP, PHP, ASP.NET etc [18] .
2.6.1 FEATURES
Dreamweaver allows users to preview websites in locally installed web browsers. Dreamweaber provides the features of transfer and synchronization. Dreamweaver have an ability to find and replace lines of text or code by search terms and regular expression across the entire site.
2.7 SWISH Max
SWISH Max is developed by swishzone.com Pty ltd, based in Sydney, Australia. It is a Blast creation tool that is commonly used to create interactive and cross-platform movies, animations, and presentations. SWISH Max primarily outputs to the .swt format [19] .
SWISH Max is generally and less costly flash creation tool in comparison with adobe flash. This tool can not support some adobe flash features such as ActionScript 3.0, shape tweens, and bitmap drawing capabilities.
The scripting used in SWSIH Max is a variation of action script, commonly known as SWISH script. SWISH script contains most ActionScript 2.0 functionality, including support for ActionScript 2.0 classes in SWISH Max 3.
SWiSH Max was designed for the Windows operating system and can run on a PC with a Pentium III 300 MHz processor, 64MB RAM, and a monitor capable of 1024x768 screen resolution and 16-bit color display.
SWiSH Max3 added features such as a knife drawing tool, advanced shape operations, and Action Script 2.0 classes. The latest release of SWISH Max is SWISH Max 4.
2.8 ADOBE PHOTOSHOP
The Photoshop is used for many purposes like: editing images (correcting colors, brightness, adding text to image, reducing size, enlarging images, changing format and so on…). With adobe Photoshop we are able to work on creating web pages, creating logos and other designing works. We are also work with 3D content, creating animations and even working with movie clips. We can make video clips cartoons [20] .
Adobe Photoshop has its own industry standard for photo editing. It is a program that allows the user to be very hands on with images and manipulate the characteristics of the picture in whatever way they feel is suitable. It also provides the facility to user to add specific features only available through the program to their images. By using Photoshop we can create images from scratches at a design level. The impact of this is that anyone with a computer in now able to design and create as they see fit. It is no longer reserved to the established and wealthy designers.
2.8.1 TOOLS
2.8.1.1 Marquee tool - Part of the selection tool and allows the user to selections.
2.8.1.2 Move tool - Used to move layers and selected objects within the canvas.
2.8.1.3 Brush tool - Paints brush strokes.
2.8.1.4 History brush - Can take you back to the original state of the selection. You can have a lot of fun with this tool. Once you learn to use it properly you will be amazed by the professional photo effects you can produce.
2.8.1.5 Rectangular marquee and Elliptical marquee tools
The Rectangular marquee and Elliptical marquee tools are hidden in the Toolbox under one and the same icon. The icon on the Toolbox displays the last tool used. To open the floating menu right-click on the arrow in the lower right corner of the displayed icon.
2.8.1.5.1 Rectangular marquee
This tool selects rectangular and square areas. To select a square area of the image make a selection keeping the Shift key pressed. Take into account that if you already have a selected area the new selection will be added to the previous one. To avoid it you should press the Shift key only when you start selecting a new area.
2.8.1.5.2 Elliptical marquee
To select a circular area of the image make a selection keeping the Shift key pressed. Take into account that if you already have a selected area the new selection will be added to the previous one. To avoid it you should press the Shift key only when you start selecting a new area.
2.9 SQL SERVER 2008
It is a relational model database server produced by Microsoft. The previous version of SQL server, SQL Server 2008, was released (RTM) on august 6, 2008. Its basic aim is to make data management self-tuning, self organizing, and self maintaining with the development of SQL Server always on technologies, to provide near-zero downtime. SQL server 2008 also includes support for structured and semi-structured data, including digital media formats for pictures, audio, video and other multimedia data. In current versions, such multimedia data can be stored to Blobs (binary large objects), but they are generic bit streams.
Structured data and metadata about the file is stored in SQL server database, whereas the unstructured component is stored in the file system. Such file can be accessed both via win32 file handling [21] .
2.9.2.2 SQL Tools
2.9.2.2.1SQLCMD
SQLCMD is a command line application that comes with Microsoft SQL Server, and exposes the management features of SQL Server. It allows SQL queries to be written and executed from the command prompt. It can also act as a scripting language to create and run a set of SQL statements as a script. Such scripts are stored as a .sql file, and are used either for management of databases or to create the database schema during the deployment of a database.
2.9.2.2.2 Visual Studio
Microsoft Visual Studio includes native support for data programming with Microsoft SQL Server. It can be used to write and debug code to be executed by SQL CLR. It also includes a data designer that can be used to graphically create, view or edit database schemas. Queries can be created either visually or using code. SSMS 2008 onwards, provides intellisense for SQL queries as well.
2.9.2.2.3 SQL Server Management Studio
SQL Server Management Studio is a GUI tool included with SQL Server 2005 and later for configuring, managing, and administering all components within Microsoft SQL Server. The tool includes both script editors and graphical tools that work with objects and features of the server.
2.9.2.2.4 Business Intelligence Development Studio
Business Intelligence Development Studio (BIDS) is the IDE from Microsoft used for developing data analysis and Business Intelligence solutions utilizing the Microsoft SQL Server Analysis Services, Reporting Services and Integration Services. It is based on the Microsoft Visual Studio development environment but customizes with the SQL Server services-specific extensions and project types, including tools, controls and projects for reports (using Reporting Services), Cubes and data mining structures (using Analysis Services).
2.10 Microsoft WORD
Microsoft word is a designed by Microsoft and it is non-free commercial word processor. This was first released in 1983 under the name Multi-Tool Word for XENIX Systems. It is component of Microsoft Office system; it is also sold as standalone product and included in Microsoft Works Suite. The current versions are Microsoft Word 2010 for Windows and 2011 for Mac [22] .
2.10.1 File format
Microsoft Word's native file formats are denoted either by a .doc or .docx file extension.
Although the ".doc" extension has been used in many different versions of Word, it actually encompasses four distinct file formats:
Word for DOS
Word for Windows 1 and 2; Word 4 and 5 for Mac
Word 6 and Word 95 for Windows; Word 6 for Mac
Word 97, 2000, 2002 and 2003 for Windows; Word 98, 2001, X, and 2004 for Mac.