SYNOPOSIS
CHAPTER-1
MOTIVATION
1.1 MOTIVATION
While working on our project at JIET, JIND, we were constantly being motivated by the extremely dedicated faculty. Lecturers were always there to solve any kind of problem, wether related to coding, software or learning .Net. We count on their worthy effort for completion of this project.
1.2 literaure survey
On account of our project, we have surveyed some of the local banks in Delhi. Axis bank have provided us with some of the most valuable knowledge & realize actual requirement of this software with slight modifications to it, in present as well as in future.
CHAPTER 2
INTRODUCTION
2.1 INTRODUCING
1. A platform
a. The .NET Framework
b. Visual
c. .NET Enterprise Servers
i. database, messaging, integration, commerce, proxy, security, mobility, orchestration, content management
d. .NET Building Block Services
i. Passport
ii. .NET My Services (“Hailstorm”)
e. Goal: make it incredibly easy to build powerful web applications and web services
Why to use .NET?
• Interoperability between languages and execution environments.
• Uniformity in schema or formats for Data exchange used XML, XSL.
• Extend or use existing code that is valid.
• Programming complexity of environment is reduced.
[pic]
Fig. 2.1 This is the .net Platform which help in understanding both windows based & web based applications development.
[pic]
Fig. 2.2 This is the .NET Framework which describe all the components of Visual
What Is the .NET Framework?
A set of technologies for developing and using components to create:
• web forms
• web services
• windows applications
The .NET framework created by Microsoft is a software development platform that focuses on rapid application development, platform independence and network transparency. .NET is Microsoft's strategic initiative for server and desktop development for the next decade. According to Microsoft, .NET includes many technologies that are designed to facilitate rapid development of Internet and Intranet applications. .NET-connected solutions aim to enable businesses integrate their systems more rapidly and in a more agile manner and help them realize the promise of information anytime, anywhere, on any device.
2.2 INTRODUCING C#
C# is a new computer-programming language developed by Microsoft corporation USA. C# is fully object-oriented language like java and is the first component oriented language. It has been designed to support the key features of NET Framework, the new development platform of Microsoft for building component-based software solution. It is a simple, efficient, productive and type-safe language derived from popular c and c++ languages.
C# is designed for building robust, reliable and durable components to handle real-world applications. Today’s world wide web consist of a large numbers of individual web sites that do not co-operate. The next generation of the web is expected to have dynamic co-operating web sites on its network. The .NET platform and its technologies developed by Microsoft will enable such co-operation among websites.
Features of C#
1. C# is a brand new language derived from the C/C++ family.
2. It simplifies and modernizes C#.
3. It is the only component-oriented language available today
4. It is the only language designed for the .NET Framework.
5. It is a concise, lean and modern language.
6. It combines the best features of many commonly used the productivity of visual basic, the power of C++ and the elegance of java.
7. It is object-oriented and well-enabled.
8. It is a lean and consistent syntax.
9. It will become the language of choice for .Net programming.
10. Major parts of .NET framework are actually coded in C#.
2.3 Features of .NET
▪ The Common Language Runtime
▪ Class Libraries
▪ Language Independence
▪ Just-in-Time Compilation
▪ Memory Management
▪ Server-Side Controls
▪ Web Services
Common Language Runtime
The CLR provides the appearance of an application virtual machine similar to the Java Virtual Machine, so that programmers need not consider the capabilities of the specific CPU that will execute the program. CLR provides following:-
• Safe binary code execution
• Bug reduction
• Ease of integration with internet technologies
Features of CLR:
• Verification of the type safety of MSIL.
• Conversion of MSIL to native code using JIT compilers.
• Loading and execution of managed code (MSIL or native).
• Cross-language integration, especially cross-language inheritance.
• Garbage collection, which manages object lifetime so that reference counting is unnecessary & the ability to compile once and run on any CPU and operating system that supports the runtime.
[pic]
Fig. 2.3 Steps of compilation in CLR.
[pic]
Fig. 2.4 This is the compiler system (CLR) which shows how compilation process executes with the change in extensions.
.NET Framework Class Libraries
• The .NET Framework class library is a collection of reusable types that tightly integrate with the common language runtime.
• The class library is object oriented, providing types from which your own managed code can derive functionality.
• This not only makes the .NET Framework types easy to use, but also reduces the time associated with learning new features of the .NET Framework.
• Third-party components can integrate seamlessly with classes in the .NET framework.
Language Independence
.NET application can be written using any number of different programming languages. The most popular languages tend to be C# and , but many other languages now have .NET versions including Python, COBOL, and more. Language independence is attained through the use of an intermediate language (IL).
Just-in-Time Compilation
When code is compiled and it is translated to the intermediate language it is then simply stored in an assembly. When that assembly is used the CLR picks up that code and compiles it on-the-fly for the specific machine that is running the code. However, at this point the CLR doesn’t compile everything in the assembly; it only compiles the individual method that is being invoked. The kind of on-the-fly compilation, referred to as JITing, only happens once per method call. The next time a method is called, no compilation occurs because the CLR has already compiled that code.
Memory Management
.NET removes the hassle of manually managing memory through the use of the aptly named garbage collector. Instead of the developer needing to remove objects in memory and then decides which ones aren’t needed anymore.
Server-Side Controls
pages are built out of server-side controls. Web server controls enable you to represent and program against Hypertext Markup Language (HTML) elements using an intuitive object model.
Web Services
includes a new technology called Web Services. You can use Web Services to access methods and properties and transfer database data across the Internet.
2.4 Web Services and Microsoft .NET
What are Web Services?
• Web services are small units of code
• Web services are designed to handle a limited set of tasks
• Web services use XML based communicating protocols
• Web services are independent of operating systems
• Web services are independent of programming languages
Small Units of Code
Web services are small units of code designed to handle a limited set of tasks. An example of a web service can be a small program designed to supply other applications with the latest stock exchange prices. Another example can be a small program designed to handle credit card payment.
XML Based Web Protocols
Web services use the standard web protocols HTTP, XML, SOAP, WSDL, and UDDI.
Independent of Operating Systems
Since web services use XML based protocols to communicate with other systems, web services are independent of both operating systems and programming languages.
Web services can create new possibilities for many businesses because it provides an easy way to distribute information to a large number of consumers. One example could be flight schedules and ticket reservation systems.
WEB SERVICES WITH .NET:
1. 1. Microsoft plans to provide a number of Web Services that application developers can use for a fee
1. Microsoft .NET Passport - authentication service offers single sign-on capability for any Web site
1. now Windows Live ID
2. Microsoft .NET My Services - set of user-centric, XML Web services to manage, protect personal information e.g. Calendar, Contact, Inbox
2. Using you can create Web Services that others can use
3. Using a .NET language (or ) you can write a program that uses Web Services
2.5 Programming the Web Active Server Pages (ASP)
What is ASP?
1. ASP stands for Active Server Pages
2. ASP is a program that runs inside IIS
3. Technology to easily create server-side applications
4. ASP pages are written in a scripting language usually VBScript but also Jscript or Perl Script
5. ASP script is commonly used to access and update a database
What is an ASP File?
1. An ASP file is just the same as an HTML file
2. An ASP file can contain text, HTML, XML, and scripts
3. Scripts in an ASP file are executed on the server
4. An ASP file has the file extension ".asp"
ASP Environment
1. The user makes a request for an ASP through a web browser.
2. The server receives the request and executes any server side essentials. The result of this is an ASP file.
3. The server then parses the ASP file and executes it, resulting in an HTML file.
4. This HTML file is sent to the user's web browser.
2.6 ActiveX Data Objects
(ActiveX Data Objects .NET) is the primary data access method for the .NET Framework. To start, the data used by an application is stored in a dataset that contains one or more data tables. To load data into a data base, you use a data adapter. The main function of the data adapter is to manage the flow of data between a dataset and a database. To do that, it uses commands that define the SQL statements to be issued. The command for retrieving data, for example, typically defines a Select statement. Then, the command connects to the database using a connection and passes the Select statement to the database. After the Select statement is executed, the result set it produces is sent back to the data adapter, which stores the results in the data table.
To update the data in a database, the data adapter uses a command that defines an Insert, Update, or Delete statement for a data table. Then, the command connects to the database and performs the requested operation.
All of the objects are implemented by classes in the System.Data namespace of the .NET Framework.
ADO Data Base Model (Active-X Data Access Objects)
The Connection object is used to talk to the DB. We give it the location and type of db and it knows how to communicate with our DB.
[pic]
Fig. 2.5 ADO Data Base Model
CHAPTER 3
STRUCTURE OF WEB SITE
3.1 Web Site Structure
When creating an Web site, you can include specific types of files that recognizes for processing. In addition, you can create folders for special purposes, such as for storing source code. The topics in this section provide information about the files and folders recognized for special handling by , and about how to reference their contents in your applications.
3.1.1 Web Site Layout
You can keep your Web site's files in any folder structure that is convenient for your application. To make it easier to work with your application, reserves certain file and folder names that you can use for specific types of content.
Default Pages
You can establish default pages for your application, which can make it simpler for users to navigate to your site. The default page is the page that is served when users navigate to your site without specifying a particular page. For example, you can create a page named Default.aspx and keep it in your site's root folder. When users navigate to your site without specifying a particular page (for example, ) you can configure your application so that the Default.aspx page is requested automatically. You can use a default page as the home page for your site, or you can write code in the page to redirect users to other pages.
Application Folders
recognizes certain folder names that you can use for specific types of content. The table below lists the reserved folder names and the type of files that the folders typically contain.
Managing Subfolders
Configuration settings for your site are managed in a Web.config file that is located in the site's root folder. If you have files in subfolders, you can maintain separate configuration settings for those files by creating a Web.config file in that folder.
Restricting Access to Site Content:-
As part of the site's configuration, you can configure settings that restrict access to either individual files or subfolders. You can restrict content by individuals or by roles (groups).
3.1.2Web Site File Types
Web site applications can contain a number of file types, some supported and managed by , and others supported and managed by the IIS server.
Most of the file types can be automatically generated using the Add New Item menu item in Visual Web Developer.
File types are mapped to applications using application mappings. For example, if you use double-click a .txt file in Windows Explorer, Notepad will probably open, because in Windows, .txt file types are mapped by default to Notepad.exe. In Web applications, file types are mapped to application extensions in IIS.
3.1.3 Web Site Paths
When working with resources in a Web site, you must often specify a path for the resource. For example, you might use a URL path to reference an image file in a page or the URL of a page elsewhere in the Web site. Similarly, code in your Web application might use a physical file path to a server-based file to read or write the file. provides facilities for referring to resources and for determining the paths of pages or other resources in the application.
Specifying Paths for Resources
In many cases, elements or controls on your page must refer to an external resource such as a file. supports various methods for referencing external resources. The reference method you choose depends on whether you are working with a client-side element or a Web server control.
Client Elements:-
Elements that are not Web server controls on a page—client elements—are passed through as-is to the browser. Therefore, when referring to a resource from a client element, you construct paths according to standard rules for URLs in HTML. You can use a fully qualified (which is also known as absolute) URL path or various types of relative paths. For example, if your page contains an img element, you can set its src attribute using one of the following paths:
• An absolute URL path. An absolute URL path is useful if you are referencing resources in another location, such as an external Web site.
• A site-root relative path, which is resolved against the site root (not the application root). Site-root relative paths are useful if you keep cross-application resources, such as images or client script files, in a folder that is located under the Web site root.
Server Controls:-
In server controls that reference resources, you can use absolute or relative paths as you do for client elements. If you use relative paths, they are resolved relative to the path of the page, user control, or theme in which the control is contained.
Absolute and relative path references in a server control have the following disadvantages:
• Absolute paths are not portable between applications. If you move the application that the absolute path points to, the links will break.
• Relative paths in the style of client elements can be difficult to maintain if you move resources or pages to different folders.
To overcome these disadvantages, includes the Web application root operator (~), which you can use when specifying a path in server controls. resolves the ~ operator to the root of the current application. You can use the ~ operator in conjunction with folders to specify a path that is based on the current root.
The following example shows the ~ operator used to specify a root-relative path for an image when using the Image server control In this example, the image file is read from the Images folder that is located directly under the root of the Web application, regardless of where in the Web site the page is located.
You can use the ~ operator in any path-related property in server controls. The ~ operator is recognized only for server controls and in server code. You cannot use the ~ operator for client elements.
Determining Physical File Paths for the Current Web Site
In your application, you might need to determine the path of a file or other resource on the server. For example, if your application reads or writes a text file programmatically, you must supply the file's complete physical path to the methods used for reading and writing.
It is not a good practice to hard-code physical file paths (such as C:\Website\MyApplication) into your application because the paths can change if you move or deploy your application. However, provides you with ways to get any physical file path within your application programmatically. You can then use the base file path to create a full path to the resource you need. The two most commonly used features for determining a file path are properties of the Http Request object that return path information, and the Map Path method.
Determining the Path from Request Properties
The following table lists properties of the Http Request object that help you determine the paths of resources in your application.
|Property |Description |
|Application Path |Gets the root path of the current application, regardless of where in the application you request |
| |it. For the example, the property returns the following: / |
|Current Execution File |Gets the virtual path of the current request. Differs from the File Path property in that Current |
|Path |Execution File Path is correct if the request has been redirected in server code. |
| |If you get the property in code that is running as a result of a call to Transfer or Execute, the |
| |path reflects the location of the code. |
|File Path |Gets the virtual path of the current request. |
| |Unlike the Current Execution File Path property, File Path does not reflect server-side transfers.|
|Path |Gets the virtual path of the current request. |
|Physical Application Path|Gets the physical file system path of the currently executing application's root directory. |
Using the MapPath Method
The MapPath method returns the complete physical path for a virtual path that you pass to the method.
3.2 Life Cycle
This topic outlines the application life cycle, listing important life-cycle events and describing how code that you write can fit into the application life cycle. Within , several processing steps must occur for an application to be initialized and process requests. Additionally, is only one piece of the Weserver architecture that services requests made by browsers. It is important for you to understand the application life cycle so that you can write code at the appropriate life cycle stage for the effect you intend.
Application Life Cycle in General
The following table describes the stages of the application life cycle.
|Stage |Description |
|User requests an |The life cycle of an application starts with a request sent by a browser to the Web |
|application resource from |server (for applications, typically IIS). is an ISAPI extension under the Web |
|the Web server. |server. When a Web server receives a request, it examines the file name extension of the |
| |requested file, determines which ISAPI extension should handle the request, and then passes the |
| |request to the appropriate ISAPI extension. handles file name extensions that have been |
| |mapped to it, such as .aspx, .ascx, .ashx, and .asmx. |
| receives the first |When receives the first request for any resource in an application, a class named |
|request for the |Application Manager creates an application domain. Application domains provide isolation between|
|application. |applications for global variables and allow each application to be unloaded separately. Within |
| |an application domain, an instance of the class named Hosting Environment is created, which |
| |provides access to information about the application such as the name of the folder where the |
| |application is stored. |
| |The following diagram illustrates this relationship: |
| |[pic] |
| | also compiles the top-level items in the application if required, including application |
| |code in the App_Code folder |
| core objects are |After the application domain has been created and the Hosting Environment object instantiated, |
|created for each request. | creates and initializes core objects such as Http Context, Http Request, and Http |
| |Response. The Http Context class contains objects that are specific to the current application |
| |request, such as the Http Request and Http Response objects. The Http Request object contains |
| |information about the current request, including cookies and browser information. The Http |
| |Response object contains the response that is sent to the client, including all rendered output |
| |and cookies. |
|An HttpApplication object |After all core application objects have been initialized, the application is started by creating|
|is assigned to the request |an instance of the HttpApplication class. If the application has a Global.asax file, |
| |instead creates an instance of the Global.asax class that is derived from the HttpApplication |
| |class and uses the derived class to represent the application. |
| |The following diagram illustrates this relationship: |
| |[pic] |
|The request is processed by|The following events are executed by the HttpApplication class while the request is processed. |
|the HttpApplication |The events are of particular interest to developers who want to extend the HttpApplication |
|pipeline. |class. |
| |Validate the request, which examines the information sent by the browser and determines whether |
| |it contains potentially malicious markup. For more information, see ValidateRequest and Script |
| |Exploits Overview. |
| |Perform URL mapping, if any URLs have been configured in the UrlMappingsSection section of the |
| |Web.config file. |
| |Raise the BeginRequest event. |
| |Raise the AuthenticateRequest event. |
| |Raise the PostAuthenticateRequest event. |
| |Raise the AuthorizeRequest event. |
| |Raise the PostAuthorizeRequest event. |
| |Raise the ResolveRequestCache event. |
| |Raise the PostResolveRequestCache event. |
| |Based on the file name extension of the requested resource (mapped in the application's |
| |configuration file), select a class that implements IHttpHandler to process the request. If the |
| |request is for an object (page) derived from the Page class and the page needs to be compiled, |
| | compiles the page before creating an instance of it. |
| |Raise the PostMapRequestHandler event. |
| |Raise the AcquireRequestState event. |
| |Raise the PostAcquireRequestState event. |
| |Raise the PreRequestHandlerExecute event. |
| |Call the ProcessRequest method (or the asynchronous version BeginProcessRequest) of the |
| |appropriate IHttpHandler class for the request. For example, if the request is for a page, the |
| |current page instance handles the request. |
| |Raise the PostRequestHandlerExecute event. |
| |Raise the ReleaseRequestState event. |
| |Raise the PostReleaseRequestState event. |
| |Perform response filtering if the Filter property is defined. |
| |Raise the UpdateRequestCache event. |
Life Cycle Events and the Global.asax file
During the application life cycle, the application raises events that you can handle and calls particular methods that you can override. To handle application events or methods, you can create a file named Global.asax in the root directory of your application.
If you create a Global.asax file, compiles it into a class derived from the HttpApplication class, and then uses the derived class to represent the application.
An instance of HttpApplication processes only one request at a time. This simplifies application event handling because you do not need to lock non-static members in the application class when you access them. This also allows you to store request-specific data in non-static members of the application class. For example, you can define a property in the Global.asax file and assign it a request-specific value.
automatically binds application events to handlers in the Global.asax file using the naming convention Application_event, such as Application_BeginRequest. This is similar to the way that page methods are automatically bound to events, such as the page's Page_Load event. For details, see Page Life Cycle Overview.
The Application_Start and Application_End methods are special methods that do not represent HttpApplication events. calls them once for the lifetime of the application domain, not for each HttpApplication instance.
Events and Methods
The following table lists some of the events and methods that are used during the application life cycle. There are many more events than those listed, but they are not commonly used.
|Event or method |Description |
|Application_Start |Called when the first resource (such as a page) in an application is requested. The |
| |Application_Start method is called only one time during the life cycle of an application. You |
| |can use this method to perform startup tasks such as loading data into the cache and |
| |initializing static values. |
| |You should set only static data during application start. Do not set any instance data because|
| |it will be available only to the first instance of the HttpApplication class that is created. |
|Application_event |Raised at the appropriate time in the application life cycle, as listed in the application |
| |life cycle table earlier in this topic. |
| |Application_Error can be raised at any phase in the application life cycle. |
| |Application_EndRequest is the only event that is guaranteed to be raised in every request, |
| |because a request can be short-circuited. For example, if two modules handle the |
| |Application_BeginRequest event and the first one throws an exception, the |
| |Application_BeginRequest event will not be called for the second module. However, the |
| |Application_EndRequest method is always called to allow the application to clean up resources.|
|HttpApplication.Init |Called once for every instance of the HttpApplication class after all modules have been |
| |created. |
|Dispose |Called before the application instance is destroyed. You can use this method to manually |
| |release any unmanaged resources. |
|Application_End |Called once per lifetime of the application before the application is unloaded. |
Compilation Life Cycle
When the first request is made to an application, compiles application items in a specific order. The first items to be compiled are referred to as the top-level items. After the first request, the top-level items are recompiled only if a dependency changes. The following table describes the order in which top-level items are compiled.
|Item |Description |
|App_GlobalResources |The application's global resources are compiled and a resource assembly is built.|
| |Any assemblies in the application's Bin folder are linked to the resource |
| |assembly. |
|App_WebResources |Proxy types for Web services are created and compiled. The resulting Web |
| |references assembly is linked to the resource assembly if it exists. |
|Profile properties defined in the |If profile properties are defined in the application's Web.config file, an |
|Web.config file |assembly is generated that contains a profile object. |
|App_Code |Source code files are built and one or more assemblies are created. All code |
| |assemblies and the profile assembly are linked to the resources and Web |
| |references assemblies if any. |
|Global.asax |The application object is compiled and linked to all of the previously generated |
| |assemblies. |
Once the application's top level items have been compiled, compiles folders, pages, and other items as needed.
The following table describes the order in which folders and items are compiled.
|Item |Description |
|App_LocalResources |If the folder containing the requested item contains an |
| |App_LocalResources folder, the contents of the local resources |
| |folder are compiled and linked to the global resources assembly. |
|Individual Web pages (.aspx files), user controls |Compiled as needed and linked to the local resources assembly and |
|(.ascx files), HTTP handlers (.ashx files), and HTTP |the top-level assemblies. |
|modules (.asmx files) | |
|Themes, master pages, other source files |Skin files for individual themes, master pages, and other source |
| |code files referenced by pages are compiled when the referencing |
| |page is compiled. |
Compiled assemblies are cached on the server and reused on subsequent requests and are preserved across application restarts as long as the source code is unchanged.
Because the application is compiled on the first request, the initial request to an application can take significantly longer than subsequent requests. You can pre-compile your application to reduce the time required for the first request.
Application Restarts
Modifying the source code of your Web application will cause to recompile source files into assemblies. When you modify the top-level items in your application, all other assemblies in the application that reference the top-level assemblies are recompiled as well.
In addition, modifying, adding, or deleting certain types of files within the application's known folders will cause the application to restart.
When an application restart is required, will serve all pending requests from the existing application domain and the old assemblies before restarting the application domain and loading the new assemblies.
HTTP Modules
The application life cycle is extensible through IHttp Module classes. includes several classes that implement IHttp Module, such as the Session State Module class. You can also create your own classes that implement IHttp Module.
If you add modules to your application, the modules themselves can raise events. The application can subscribe to in these events in the Global.asax file by using the convention modulename_eventname. For example, to handle the Authenticate event raised by a Forms Authentication Module object, you can create a handler named Forms Authentication_Authenticate.
The Session State Module class is enabled by default in . All session events are automatically wired up as Session_event, such as Session_Start. The Start event is raised each time a new session is created.
Page Life Cycle Overview
Data Binding Events for Data-Bound Controls
To help you understand the relationship between the page life cycle and data binding events, the following table lists data-related events in data-bound controls such as the GridView, DetailsView, and FormView controls.
|Control Event |Typical Use |
|DataBinding |This event is raised by data-bound controls before the PreRender event |
| |of the containing control (or of the Page object) and marks the |
| |beginning of binding the control to the data. |
| |Use this event to manually open database connections, if required. (The |
| |data source controls often make this unnecessary.) |
|RowCreated (GridView only) or ItemCreated |Use this event to manipulate content that is not dependent on data |
|(DataList, DetailsView, SiteMapPath, DataGrid, |binding. For example, at run time, you might programmatically add |
|FormView, and Repeater controls) |formatting to a header or footer row in a Grid View control. |
|RowDataBound (GridView only) or ItemDataBound |When this event occurs, data is available in the row or item, so you can|
|(DataList, SiteMapPath, DataGrid, and Repeater |format data or set the Filter Expression property on child data source |
|controls) |controls for displaying related data within the row or item. |
|DataBound |This event marks the end of data-binding operations in a data-bound |
| |control. In a Grid View control, data binding is complete for all rows |
| |and any child controls. |
| |Use this event to format data bound content or to initiate data binding |
| |in other controls that depend on values from the current control's |
| |content. (For details, see "Catch-up Events for Added Controls" earlier |
| |in this topic.) |
Login Control Events
The Login control can use settings in the Web.config file to manage membership authentication automatically. However, if your application requires you to customize how the control works, or if you want to understand how Login control events relate to the page life cycle, you can use the events listed in the following table.
|Control Event |Typical Use |
|LoggingIn |This event is raised during a post back, after the page's Load Complete event has occurred. It marks |
| |the beginning of the login process. |
| |Use this event for tasks that must occur prior to beginning the authentication process. |
|Authenticate |This event is raised after the Logging In event. |
| |Use this event to override or enhance the default authentication behavior of a Login control. |
|LoggedIn |This event is raised after the user name and password have been authenticated. |
| |Use this event to redirect to another page or to dynamically set the text in the control. This event |
| |does not occur if there is an error or if authentication fails. |
|LoginError |This event is raised if authentication was not successful. |
| |Use this event to set text in the control that explains the problem or to direct the user to a |
| |different page. |
Compilation Overview
In order for application code to service requests by users, must first compile the code into one or more assemblies. Assemblies are files that have the file name extension .dll. You can write code in many different languages, such as Visual Basic, C#, J#, and others. When the code is compiled, it is translated into a language-independent and CPU-independent representation called Microsoft Intermediate Language (MSIL). At run time, MSIL runs in the context of the .NET Framework, which translates MSIL into CPU-specific instructions for the processor on the computer running the application.There are many benefits to compiling application code including:
• Performance Compiled code is much faster than scripting languages such as ECMAScript or VBScript because it is a closer representation to machine code and does not require additional parsing.
• Security Compiled code is more difficult to reverse engineer than non-compiled source code because it lacks the readability and abstraction of a high-level language. Additionally, there are obfuscation tools that make compiled code even more resistant to reverse engineering.
• Stability Code is checked at compile time for syntax errors, type safety, and other problems. By catching these errors at build-time you can eliminate many errors in your code.
• Interoperability Because MSIL code supports any .NET language, you can use assemblies that were originally written in other languages in your code. For example, if you are writing an Web page in C#, you can add a reference to a .dll file that was written in Visual Basic.
The compilation architecture includes a number of features including:
• Multiple language support.
• Automatic compilation.
• Flexible deployment.
• The following sections describe each of these features.
Multiple Language Support
In 2.0 you can use different languages such as Visual Basic and C# in the same application because will create multiple assemblies, one for each language. For code stored in the App_Code folder, you can specify a subfolder for each language.
Automatic Compilation
automatically compiles your application code and any dependent resources the first time a user requests a resource from the Web site. In general, creates an assembly for each application directory (such as App_Code) and one for the main directory. (If files in a directory are in different programming languages, then separate assemblies will be created for each language.)
Flexible Deployment
Because compiles your Web site on first user request, you can simply copy your application's source code to the production Web server. However, also provides pre-compilation options that allow you to compile your Web site before it has been deployed, or to compile it after it has been deployed but before a user requests it. Pre-compilation has several advantages. It can improve the performance of your Web site on first request because there will be no lag time while compiles the site. Pre-ompiling can also help you find errors that might otherwise be found only when a user requests a page. Finally, if you pre-compile the Web site before you deploy it, you can deploy the assemblies instead of the source code.
You can pre-compile a Web site using the compiler tool (ASPNET_Compiler.exe). The tool that provides the following pre-compilation options:
• In-place compilation This option performs the same compilation that occurs during dynamic compilation. Use this option to compile a Web site that has already been deployed to a production server.
• Non-updateable full pre-compilation Use this to compile an application and then copy the compiled output to the production server. All application code, markup, and UI code is compiled into assemblies. Placeholder files such as .aspx pages still exist so that you can perform file-specific tasks such as configure permissions, but the files contain no updateable code. In order to update any page or any code you must pre-compile the Web site again and deploy it again.
• Updateable pre-compilation This is similar to non-updateable full pre-compilation, except that UI elements such as .aspx pages and .ascx controls retain all their markup, UI code, and inline code, if any. You can update code in the file after it has been deployed; will detect changes to the file and recompile it. Note that code in a code-behind file (.vb or .cs file) built into assemblies during pre-compilation, and you therefore cannot change it without going through the pre-compilation and deployment steps again.
Extensible Build System
uses BuildProvider classes to build items such as .aspx pages, .ascx files, and global resources. You can extend and customize the build system to compile custom resources by creating classes that inherit from the BuildProvider class. For example, you could add a new file type and then write a BuildProvider that builds that particular type.
Error Messages and Events
The following sections discuss how you can mitigate potential security risks that are exposed by unexpected error messages and events.
Exception Messages:-
Exceptions thrown by site navigation features do not expose privileged information. Review and test custom classes in your Web application for invalid input and requests to help ensure that privileged information will not be exposed when exceptions occur.
Error Messages:-
To help prevent exposing sensitive information to unwanted sources, either turn on custom errors for your application, or display detailed error messages only when the client is the Web server itself.
CHAPTER 4
Creating Web Applications
4.1 Creating Web Applications using Visual Studio 2005
Fig. 4.1 Creating an Web Site project can use C# or
[pic]
Fig. 4.2 The form layout goes in an .aspx file. The C# (or VB) code goes in an .aspx.cs file - called a “code behind” file.
[pic]
Fig. 4.3 Double click the button and enter the code in its event procedure
[pic]
4.1.1 DEFAULT CODE BEHIND
[pic]
Fig. 4.4 This is the code which is created by this platform along with the coding on
toolbox items.
4.1.2 TOOLBOX TO CREATE A PAGE
[pic]
Fig. 4.5 In this fig toolbox is shown containing all the items required for developing the application.
4.1.3 STANDARD CONTROLS
[pic]
Fig. 4.6 These are the standard items or controls in the tool box.
Label Web Server Control:
The Label Web server control provides you with a way to programmatically set text in an Web page. You typically use the Label control when you want to change text in the page at run time, such as in response to a button click.
Text Box Web Server Control:
The Textbox Web server control provides a way for users to type information into a Web Forms page, including text, numbers, and dates. You can configure the Textbox Web server control in several ways, as described in the following table.
|Configuration |Description |
|Single-line |Users type information in a single line. You can optionally limit the number of characters that the |
| |control accepts. |
|Password |Like a single-line Textbox control, but the characters users type are masked with asterisks (*) to |
| |hide them. |
Button Web Server Controls:
Using button Web server controls on Web pages allows users to indicate that they have completed the form or that they want to perform a specific command. Web server controls include three kinds of buttons, each of which appears differently on Web pages.
[pic] Types of Buttons:
|Control |Description |
|Button Web server |Presents a standard command button, which is rendered as an HTML input element. |
|control | |
|Link Button Web server |Renders as a hyperlink in the page. However, it contains client-side script that causes the form|
|control |to be posted back to the server. (You can create a true hyperlink by using the Hyper Link Web |
| |server control.) |
|Image Button Web server|Allows you to specify a graphic as a button. This is useful for presenting a rich button |
|control |appearance. The Image Button controls also pinpoint where in the graphic a user has clicked, |
| |which allows you to use the button as an image map. |
Hyper Link Web Server Control:
The Hyper Link Web server control creates links on a Web page that allow users to move from page to page in your application.
List Box Web Server Control:
The List Box Web server control enables users to select one or more items from a predefined list. It differs from a Drop Down List control in that it can display multiple items at once and it optionally enables the user to select multiple items.
Check Box and Check Box List Web Server Controls:
You can use two types of Web server controls to add check boxes to a Web Forms page: individual Check Box controls or a Check Box List control. Both controls provide a way for users to input Boolean data: true or false, yes or no.
Radio Button and Radio Button List Web Server Controls:
You can use two types of Web server controls to add radio buttons to an Web page: individual Radio Button controls or a Radio Button List control. Both controls allow users to select from a small set of mutually exclusive, predefined choices. The controls allow you to define any number of radio buttons with labels and to arrange them horizontally or vertically.
Image Web Server Control:
The Image Web server control allows you to display images on an Web page and manage these images in your own code.
ImageMap Web Server Control:
The ImageMap control allows you to create an image that has individual regions that users can click, which are called hot spots. Each of these hot spots can be a separate hyperlink or postback event.
BulletedList Web Server Control:
The BulletedList control creates an unordered or ordered (numbered) list of items, which renders as an HTML ul or ol element, respectively. You can specify the appearance of the items and of the bullets or numbers, define the list items statically or by binding the control to data, and you can respond to users' clicks on items.
Calendar Web Server Control:
You can use the Calendar Web server control to do the following:
• Display and select dates The control displays a calendar through which users can navigate to any day in any year. Setting the Selected Date property causes a specific date to be highlighted in the control. Optionally, users can move to arbitrary dates by clicking a day or moving from month to month.
• A representation of the Calendar control displaying the month of October
[pic]
• Display appointment or other information in a calendar grid The Calendar control can display specific details for individual days, such as a to-do list, a schedule of events, or similar information. This feature allows you to display day information from a database.
AdRotator Web Server Control:
The AdRotator Web server control provides a convenient way to display advertisements (ads) on your Web pages. The control displays a graphic image that you provide — a .gif file or similar image. When users click the ad, they are redirected to a target URL that you have specified. The control automatically reads advertisement information, such as the graphic file name and the target URL, from a list of ads that you provide using a data source, which is usually an XML file or database table. The AdRotator control selects ads randomly, changing the displayed ad each time the page is refreshed.
4.1.4 DATA CONTROLS
[pic]
Fig. 4.7 These are the data controls given in the tool box for the data feeding purpose.
4.1.5 VALIDATION CONTROL
[pic]
Fig. 4.8 These validation controls in the tool box is used for describing range variation.
|Type of validation |Control to use |Description |
|Required entry |Required Field |Ensures that the user does not skip an entry. For details, see How to: |
| |Validator |Validate Required Entries for Server Controls. |
|Comparison to a value |Compare Validator |Compares a user's entry against a constant value, against the value of |
| | |another control (using a comparison operator such as less than, equal, |
| | |or greater than), or for a specific data type. For details, see How to:|
| | |Validate Against a Specific Value for Server Controls and How |
| | |to Validate Against a Data Type for Server Controls. |
|Range checking |Range Validator |Checks that a user's entry is between specified lower and upper |
| | |boundaries. You can check ranges within pairs of numbers, alphabetic |
| | |characters, and dates. For details, see How to: Validate Against a |
| | |Range of Values for Server Controls. |
|Pattern matching |Regular Expression |Checks that the entry matches a pattern defined by a regular |
| |Validator |expression. This type of validation enables you to check for |
| | |predictable sequences of characters, such as those in e-mail addresses,|
| | |telephone numbers, postal codes, and so on. For details, see How to: |
| | |Validate Against Patterns for Server Controls. |
|User-defined |Custom Validator |Checks the user's entry using validation logic that you write yourself.|
| | |This type of validation enables you to check for values derived at run |
| | |time. For details, see How to: Validate with a Custom Function for |
| | | Server Controls and How to: Validate Against Values in a |
| | |Database for Server Controls. |
4.1.6 NAVIGATION CONTROL
[pic]
Fig. 4.9 These navigation controls in the tool box is used for locating the item.
SiteMapPath Web Server Control:
The SiteMapPath displays a navigation path (which is also known as a breadcrumb or eyebrow) that shows the user the current page location and displays links as a path back to the home page. The control provides many options for customizing the appearance of the links.
The SiteMapPath control obtains navigation data from a site map. This data includes information about the pages in your Web site, such as the URL, title, description, and location in the navigation hierarchy. Storing your navigation data in one place makes it easier to add and remove items in the navigational menus of your Web site.
Menu Web Server Control:
The Menu control enables you to add functionality to your Web pages that is often used to provide navigation. The Menu control supports a main menu and submenus, and allows you to define dynamic menus (sometimes called "fly-out" menus). This section includes information on how to work with the Menu control to create navigation using static items and data from various sources.
TreeView Web Server Control:
The TreeView Web server control is used to display hierarchical data, such as a table of contents or file directory, in a tree structure. It supports the following features:
• Automatic data binding, which allows the nodes of the control to be bound to hierarchical data, such as an XML document.
• Site navigation support through integration with the SiteMapDataSource control.
• Node text that can be displayed as either selectable text or hyperlinks.
• Customizable appearance through themes, user-defined images, and styles.
4.1.7 LOGIN CONTROL
[pic]
Fig. 4.10 These controls are used for developing a login page for security purpose.
4.2 Server SQL:
SQL server is an SQL –compliant RDBMS. SQL- compliant means it use the ANSI (American national standard institute) version of structured query language or ‘SQL’. Structured query language is a command that allow us to modify or retrieve information from the database.
Client server means that SQL server is designed to store data in the central location (the server) and deliver it on demand on numerous other locations (the client). SQL server is also a relational database management system (RDBMS).
FEATURES OF SQL SERVER 2000:
➢ Information representation.
➢ Unique definitions of rows.
➢ Systematic treatment of null values.
➢ Guaranteed access.
➢ High-level update, insert, and delete
➢ Retrieving information from the database
➢ Accepting query language statements
➢ Enforcing security specifications.
➢ Enforcing transaction consistency.
➢ Managing data sharing
➢ Optimizing queries
➢ Managing system catalogs
SQL Server Enterprise Manager:
Sever enterprise manager is a graphical tool that allows easy configuration and management of Microsoft SQL server and SQL 2000 program group.
➢ SQL server enterprise manager can also be used to:
➢ Manage logins, permission and user.
➢ Create a database
➢ Take back up of database and transaction logs.
➢ Manage tables.
Query Analyzer:
The SQL server query analyzer allows us to create abhor queries and run them interactively. We may also execute transact-SQL statements stored in text file and view the result plane or result grid. The query analyzer also has a color-coded editor to assist the user with checking of syntax. It also has sensitive help.
PROJECT REPORT
ON
“banking SYSTEM”
CHAPTER 5
PROJECT REPORT
MEANING OF BANKS
A bank is an institution which deals in money and credit. It is a body of persons, incorporated or otherwise, which carries on the business of banking. A bank is an establishment which collects deposits from the public and supplies credit, thereby facilitating exchange. It is a corporation for a custody loan, exchange or issue of money for facilitating the transmission of funds and for expanding credit.
TYPES OF BANKS
Banks may be classified as follows-
❖ Central Bank
Central bank is the apex institution which supervises and controls the entire banking systems of the country. Every country has central bank. The reserve bank of India is the central bank of our country. It does not deal directly with the public and it aim is not to earn profit.
❖ Industrial Banks
Industrial banks provide long term and medium term finance to industries. They assist in the promotion of new industrial units and in the modernization, expansion of existing units. They not only provide finance but give technical and managerial
advice as well. Industrial bank of India (IDBI),industrial finance corporation of India (IFCI), ICICI and state financial corporations.
❖ Land Mortgage Banks
These banks provides long term finance to a agriculturists. Farmers require finance for purchasing tractors and other equipments, cattle, tube wells etc to increase the yield from land. The loans are granted against mortgage of agricultural land and other types of properties.
DATABASES
A database is a collection of one or more complex files that store data in a structured format. The database engine in Microsoft access, manages the files and the data within these files.
In our “ON-LINE BANKING” project the databases used are as follows
▪ CUSTOMER DETAIL (cdt) - This is our customer detail table shown below. It will add details of a customer in customer detail table.
[pic]
Fig. 5.1
DAILY ENTRY
This is our daily transaction table. We can deposit amount and withdrawal amount from this table.
[pic]
Fig. 5.2
5.1.SNAPSHOTS
LOGIN FORM
This is the First step of my project. This is my Login Form. We can access our project when we full fill the User Name and Password
[pic]
Fig. 5.3
MENUS
This is the Menu form. We can access different type of Forms with the help of this menu. This screen shows Customer Detail, Daily Transaction and Withdrawal Entry.
[pic]
Fig. 5.4
CUSTOMER DETAIL
This is the Customer detail form. This diagram shows the customer personal detail. With the help of this detail we can store new Customer account in the bank.
Fig. 5.5
DAILY TRANSACTION
This form shows the Daily Transaction detail. With the help of this form we can deposit the amount of existing customer for maintaining the records of deposited amount. The data will store in the cdt table.
[pic]
Fig. 5.6
WITHDRAWAL ENTRY
This diagram show’s the Withdrawal Entry. With the help of this form we can store the Withdrawal Entries of existing customers. This entry also making in cdt table. We will full fill the entries in the Withdrawal form.
[pic]
Fig. 5.7
ALTERATION CUSTOMER
This form show’s the alterations detail of the existing customer of the bank. If we want to minor or major changes in the Daily Customer detail with the help of this form we can change. We can only change the New Customer details.
[pic]
Fig. 5.8
MODIFY DAILY RECORD
This diagram show’s the detail of deposited amount. We can modify the records of Daily Transactions form. We can correct our entry with the help of this form in future in case of any problem.
[pic]
Fig. 5.9
MODIFY WITHDRAWAL
The under mention diagram show’s the detail of Customer Withdrawal entry. With the help of this form we can modify only the Customer Withdrawal entry in the future. If we have wrong entry in the customer withdrawal entry form we can correct that entry with the help of Modify Withdrawal Form.
[pic]
Fig. 5.10
.
SEARCHING WITH NAME
The under mention diagram shows the Searching form. With the help of this form we can search the existing record of the Customer with the help of name. We just write any name in this form it will show the data on the screen the above said name in the form.
[pic]
Fig. 5.11
SEARCHING ACCOUNT NO.
The under mention diagram shows the Searching form. With the help of this form we can search the existing record of the Customer with the help of Account Number. We just write any Account Number in this form it will show the existing data on the screen the above said Account Number in the form.
[pic]
Fig. 5.12
CRYSTAL REPORT
This form shows the Report. With the help of Account Number we can Collect the information of customer deposit entry and withdrawal entry.
[pic]
Fig. 5.13
When we will enter the Account Number of the customer in the field then we press Report button and the under mention diagram shows the Report of the daily and Withdrawal Entry.
CUSTOMER DETAIL
[pic]
Fig. 5.14
This is the crystal report. With the help of this report we can print these data directly on the printer.
SOFTWARE REQUIREMENT SPECIFICATION
[pic]
Fig. 5.15
The Document describes the function and performance of a computer based system. The Product produced as result of requirement elicitation
• A statement of need of feasibility
• Scope of the product.
• List of users
• Description of system technical Environment.
Possible Costs
• Development costs (one-time costs to set up a system)
• Operating costs (ongoing costs) Operating costs are either fixed (same or nearly the same every month etc.) or variable (vary in proportion to some usage factor).
| |Consulting Cost | To be borne once |
| | |Already present for workstation |
| |Equipment Installation Costs | |
| |Equipment Purchase or lease |Already equipped |
| | | |
|Procurement |Capital Costs | |
| | |No Cost |
| |Management and staff Time | |
| | |Staff already present |
| | | |
|Start Up |Operating system software |No new s/w required |
| | | |
| | | |
| |Communication Equipment Install. |No New installations required |
| | | |
| |Application Software |No special software |
|Project Related | | |
| |S/w modification to fit local systems |Not required |
| | | |
| |Collecting & analyzing data | |
| | |Covered under system analysis |
| |Preparing documentation | |
| | |One time cost |
| | | |
| |System maintenance |No extra cost |
| | | |
| |H/w, s/w and facilities |No extra cost |
|Operating | | |
| | | |
| |Rental of space and equipment |No extra cost |
| | | |
| | | |
| | | |
| | | |
| |Application software maintenance |No extra cost |
| | | |
|Recurring Costs |Incremental data storage expense | |
| | |No extra cost |
| |New hardware and software leases | |
| |Supplies and other expenses | |
| | | |
| | | |
| | |No extra cost |
| | | |
Possible Benefits:-
• Tangible benefits (those that are easily quantified - change in savings for the firm after the system is implemented)
• Intangible benefits (those which are almost impossible to quantify - customer goodwill, employee morale, better service, etc.).
| | |
| |Error reduction |
| |Increased flexibility |
|Tangible Benefits |Increased speed of activity |
| |Improvement of management planning and control |
| | |
| |Competitive necessity |
| |More timely information |
| |Improved organizational flexibility |
| |Availability of new, better or more information. |
|Intangible Benefits |Improved resource control. |
Hardware and Software Requirement
• Hardware: Intel(R) Pentium
4 CPU 1.50GHz
256MB OF RAM
• Software: platform with C#
SQL 2000
• Operating System: Microsoft Windows XP
Service Pack 2
CHAPTER 6
CONCLUSION
The software “Banking System” design in visual environment having SQL 2000 as its back end, may prove quit beneficial in local bank assessments. The software is design in accordance with the functioning of the Axis bank, New Delhi branch.
The website design here, when declared globally with the slight variation in its web pages, can be used to increase the flexibility in the banking field along with the ease of access to its attributes. Moreover the s/w provides security with the enhanced user authenticity. The administrator provided with username and password, can access the customer details and can alter them accordingly. The cost of the s/w depends upon various factors including coding, testing and maintenance. After being implemented, it requires very little or no maintenance effort.
bibliography
The following books were referred during the preparation of this course and are suggested for further reading:
• Liberty J., Hurwitz D., (2002), “Programming ”, O’Reilly, chapter 2-5.
• Kalani, A., (2002), “MCAD/MCSD Developing and Implementing Web Applications with Visual C# .NET and Visual Studio .NET”, chapter: 1
• C#. Net programming bible by STEVEN HOLZNER, chapter: 2 & 3.
• Programming by RICHARD HUNDASEN, chapter 7.
• Programming in C#.net book given by NIIT
•
•
•
•
•
[pic]
-----------------------
DLL or EXE
Assembly
Compiler
csc.exe or vbc.exe
C++, C#, VB or any .NET language
Source Code
Common Language Runtime
Loads and executes code, garbage collects etc
compe
Intermediate Language (IL) - like Java byte code
(.exe or .dll)
Program written in any .NET supported language
C#, , etc.
................
................
In order to avoid copyright disputes, this page is only a partial summary.
To fulfill the demand for quickly locating and searching documents.
It is intelligent file search solution for home and business.