Professional Documents
Culture Documents
Submitted as a part of course curriculum for the degree Of Bachelor of Technology In Information Technology (Session: 2009-2013)
ACKNOWLEDGEMENT
The satisfaction that accompanies the successful completion of any task would be incomplete without mentioning the people who made it possible and whose constant guidance and encouragement crown all the effort with success. First and foremost, I Akarsh Kathpalia deem it my foremost duty to express our sincere gratitude to our supervisor Ms Astha. I am thankful to her for providing the right direction for the conduct of the dissertation and also for her keen interest, methodological approach, and timely suggestions and faith in me. I feel privileged to have carried out this report under her able guidance. I am also thankful to Dr. P.J. George , the Director principle of Kurukshetra Institute of Technology & Management, Kurukshetra. I am glad to Dr. Rajesh Verma, Head CSE/IT for proper guidance regarding training. I acknowledge continous guidance and incessant rendered by Er. Sunil Saini not only for this project but also for overall development. Without any dilution, I would also like to thank all the staff members of the IT Department since their co-operation and help to arrange the entire necessary infrastructure for the carrying out the project was invaluable. Last but not the least, I offer my deepest gratefulness and thus owe a large amount of credit for this success to our respected parents, brother and sister for being our support throughout the ups and downs, sharing the most precious bond of love and affection, we have ever known in this life.
AKARSH KATHPALIA
CANDIDATES DECLARATION
I hereby declare that the project work which entitiled QUERY ON DEMAND in Partial fulfillment the requirement for the award of the course curriculum of Bachelor of Degree with specification in INFORMATION TECHNOLOGY , submitted in the Department of, Computer Enginnering Kurukshetra Institute of Technology & Management, Kurukshetra is an authentic record of my own original work carried out my Training period , under the guidance and supervision of Ms Aastha,CMC limited
Place: DELHI
AKARSH KATHPALIA
CONTENTS
Acknowledgement Candidate Declaration
Company TITLE
Chapter 1: Introduction to Project Chapter 2: Features of Project Chapter 3: Sections And modules of project
Chapter 4: Platform/Technology Used Chapter 5: Hardware & Software Requirements Chapter 6: Data Flow Diagrams Chapter 7: Snapshots Chapter 8: Advantages of Project Chapter 9: Limitations of Project Chapter 10: Scope of Project Chapter 11: Conclusion References
Keypoints:-.
-
The front end is C# with Asp.net and backend is SQL server. When either user will logout he will be requested to directed to login page. More information can be checked out with the help of various given links.
Hence, I have readily tried to accomplish this project with the respective language I have dealt with named ASP.NET
The project Query On Demand implemented through Asp.Net technique has the following features with respect to what all has been fixed in it or facilitated with it: Providing user friendly interface To get all the information regarding queries Easy access of data Easy maintenance Maintaining data consistency Providing better performance Increasing the efficiency through automation Adequate validation checks for data entry Facility to update the data time to time Adequate security of the database
Expert id:The expert id is provided by the site owner, to whomever he wish trustworthy. As the expert id will be entered it will get match with the username in the database then only that username will be taken by the expert page to go into the next page which is match by the username in the database. Enrolment No.:Here different students who feel to have queries to be sorted out can sign in to their respective page, where they can update their profile, change password, view query and submit query. A Student will fill his enrolment no given to him at the time of creating his profile, the enrolment will match with the database then only the student can login. Password:For very expert id and enrolment no. there is password to verify his presence and so the login must be secured, it will contain password to login to the either page(Student/expert). The password will be saved in the database. And whenever the 8
password will be entered only that password will be used by the login page to go further. There should be use of the spaces and the special characters in the password so that the hacker will not be able to crack the password otherwise it will prove very costly to the company Login button:-
It will be used submit the username and the password to the database to login to the
repective page. By clicking on to the submit button, if the username and password will be matched by the data on to the database then the repective page will be open, otherwise the next page will not be open and user will remain on that page
Create Profile:A new student can create his respective page by signing up through create profile. This helps to unite various students on a single platform.
Database Design:This module is related with identification of tables that is to be used in the project. There are 3 tables used that are Expert_profile, Student_profile, Student_Query. Tables that are used in database for storing different type of data about whole website are shown as follows:-
Expert Profile:-
Student Profile:-
Student Query:-
10
11
The .NET Framework has two main components: the common language runtime and the .NET Framework class library. The common language runtime is the foundation of the .NET Framework. The runtime as an agent that manages code at execution time, providing core services such as memory management, thread management, and remoting, Code that targets the runtime is known as managed code, while code that does not target the runtime is known as unmanaged code.
The class library, the other main component of the .NET Framework, is a comprehensive, object-oriented collection of reusable types that you can use to develop applications ranging from traditional command-line or graphical user
The following illustration shows the relationship of the common language runtime and the class library to your applications and to the overall system. The illustration also shows how managed code operates within a larger architecture.
12
13
enjoying the superior performance of the industry's best enterprise servers that support runtime hosting.
ASP.NET is the hosting environment that enables developers to use the .NET Framework to target Web-based applications. However, ASP.NET is more than just a runtime host; it is a complete architecture for developing Web sites and Internetdistributed objects using managed code. Both Web Forms and XML Web services use IIS and ASP.NET as the publishing mechanism for applications, and both have a collection of supporting classes in the .NET Framework.
Compiling to MSIL
When compiling to managed code, the compiler translates your source code into Microsoft intermediate language (MSIL), which is a CPU-independent set of instructions that can be efficiently converted to native code. MSIL includes instructions for loading, storing, initializing, and calling methods on objects, as well as instructions for arithmetic and logical operations, control flow, direct memory access, exception handling, and other operations. Before code can be executed, MSIL must be converted to CPU-specific code, usually by a just-in-time (JIT) compiler. Because the common language runtime supplies one or more JIT compilers for each computer architecture it supports, the same set of MSIL can be JIT-compiled and executed on any supported architecture. When a compiler produces MSIL, it also produces metadata. Metadata describes the types in your code, including the definition of each type, the signatures of each type's members, the members that your code references, and other data that the runtime uses at execution time. The MSIL and metadata are contained in a portable executable (PE) file that is based on and extends the published Microsoft PE and Common Object File Format (COFF) used historically for executable content. This file format, which accommodates MSIL or native code as well as metadata, enables the operating system to recognize common language runtime images. The presence of metadata in the file along with the MSIL enables your code to describe itself, which means that there is no need for type
15
libraries or Interface Definition Language (IDL). The runtime locates and extracts the metadata from the file as needed during execution.
Assemblies Overview
Assemblies are a fundamental part of programming with the .NET Framework. An assembly performs the following functions: It contains code that the common language runtime executes. Microsoft intermediate language (MSIL) code in a portable executable (PE) file will not be executed if it does not have an associated assembly manifest. Note that each assembly can have only one entry point (that is, DllMain, Win Main) It forms a security boundary. An assembly is the unit at which permissions are requested and granted. For more information about security boundaries as they apply to assemblies. It forms a type boundary. Every type's identity includes the name of the assembly in which it resides. A type called MyType loaded in the scope of one assembly is not the same as a type called MyType loaded in the scope of another assembly. It forms a reference scope boundary. The assembly's manifest contains assembly metadata that is used for resolving types and satisfying resource requests. It specifies the types and resources that are exposed outside the assembly. The manifest also enumerates other assemblies on which it depends.
16
Metadata describes every type and member defined in your code in a language-neutral fashion. Metadata stores the following information: Description of the assembly. Identity (name, version, culture, public key). The types that are exported. Other assemblies that this assembly depends on. Security permissions needed to run. Description of types. Name, visibility, base class, and interfaces implemented. 17
Garbage Collection
The .NET Framework's garbage collector manages the allocation and release of memory for your application. Each time you use the new operator to create an object, the runtime allocates memory for the object from the managed heap. As long as address space is available in the managed heap, the runtime continues to allocate space for new objects. However, memory is not infinite. Eventually the garbage collector must perform a collection in order to free some memory. The garbage collector's optimizing engine determines the best time to perform a collection, based upon the allocations being made. When the garbage collector performs a collection, it checks for objects in the managed heap that are no longer being used by the application and performs the necessary operations to reclaim their memory.
Introduction to C# :C# 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
18
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
Versions of c# :In the course of its development, the C# language has gone through several versions: Language specification ECMA ISO/IEC Microsoft January 2002 December 2002 C# 1.2 September 2006 April 2003 October 2003 April 2003 September 2005[note 1] August 2007 None C# 4.0 April 2010 November 2005 November 2007 April 2010 .NET Framework 1.1 .NET .NET Framework .NET Framework 1.0
Version
Visual Studio Visual Studio 2002 Visual Studio .NET 2003 Visual Studio .NET
C# 1.0
C# 2.0 C# 3.0
June 2006
Framework 2.0 2005 .NET Visual Studio Framework 3.5 2008 .NET Visual Studio Framework 4 2010
C# is the programming language that most directly reflects the underlying Common language Infrastructure (CLI). Most of its intrinsic types correspond to value-types 19
implemented by the CLI framework. However, the language specification does not state the code generation requirements of the compiler: that is, it does not state that a C# compiler must target a Common Language Runtime, or generate Common Intermediate Language (CIL), or generate any other specific format. Theoretically, a C# compiler could generate machine code like traditional compilers of C++ or FORTRAN.
There are no global variables or functions. All methods and members must be declared within classes. Static members of public classes can substitute for global variables and functions. Local variables cannot shadow variables of the enclosing block, unlike C and C+ +. Variable shadowing is often considered confusing by C++ texts. C# supports a strict Boolean data type, bool. Statements that take conditions, such as while and if, require an expression of a type that implements the true operator, such as the Boolean type. While C++ also has a Boolean type, it can be freely converted to and from integers, and expressions such as if(a) require only that a is convertible to bool, allowing a to be an int, or a pointer. C# disallows this "integer meaning true or false" approach on the grounds that forcing programmers to use expressions that return exactly bool can prevent certain types of common programming mistakes in C or C++ such as if (a = b) (use of assignment = instead of equality ==). In C#, memory address pointers can only be used within blocks specifically marked as unsafe, and programs with unsafe code need appropriate permissions to run. Most object access is done through safe object references, which always either point to a "live" object or have the well-defined null value; it is impossible to obtain a reference to a "dead" object (one which has been garbage collected), or to a random block of memory. An unsafe pointer can point to an instance of a value-type, array, string, or a block of memory allocated on a stack. Code that is
20
not marked as unsafe can still store and manipulate pointers through the System.IntPtr type, but it cannot dereference them.
Managed memory cannot be explicitly freed; instead, it is automatically garbage collected. Garbage collection addresses the problem of memory leaks by freeing the programmer of responsibility for releasing memory which is no longer needed. In addition to the try...catch construct to handle exceptions, C# has a try...finally construct to guarantee execution of the code in the finally block. Multiple inheritance is not supported, although a class can implement any number of interfaces. This was a design decision by the language's lead architect to avoid complication and simplify architectural requirements throughout CLI. C# is more type safe than C++. The only implicit conversions by default are those which are considered safe, such as widening of integers. This is enforced at compile-time, during JIT, and, in some cases, at runtime. There are no implicit conversions between Booleans and integers, nor between enumeration members and integers (except for literal 0, which can be implicitly converted to any enumerated type). Any user-defined conversion must be explicitly marked as explicit or implicit, unlike C++ copy constructors and conversion operators, which are both implicit by default. Enumeration members are placed in their own scope. C# provides properties as syntactic sugar for a common pattern in which a pair of methods, accessor (getter) and mutator (setter) encapsulate operations on a single attribute of a class. Full type reflection and discovery is available. C# currently (as of version 4.0) has 77 reserved words.
need a way to communicate with the right data source using the right protocol. Some older data sources use the ODBC protocol, many newer data sources use the OleDb protocol, and there are more data sources every day that allow you to communicate with them directly through .NET ADO.NET class libraries. ADO.NET provides a relatively common way to interact with data sources, but comes in different sets of libraries for each way you can talk to a data source.
Deploying ASP.NET
After creating and testing your ASP.NET application, the next step is to deploy the application. Deployment is the process of distributing the finished application to be installed on other computer. We can use the built-in deployment feature that comes with Visual studio .NET to create a Windows Installer file - a .msi file for the purpose of deploying applications.
Deploying Applications
To start, open the Web Application project you want to deploy. Say, you have a project named "Deploy" with ten Web pages in it. Select File->Add Project->New Project from the main menu. From the Project Types pane select Setup and Deployment Projects and from the Templates pane select Web Setup Project. Type WebSetup1 for name and specify a location in the location box and click OK. When you click OK on the above dialogue box, the project is added to the solution explorer window and also a File System Editor window appears as shown in the image below. The File System Editor window has two panes. Select Web Application Folder in the left pane in this window. From the Action menu (on main menu), select Project Output to open the Add Project Output Group dialog boxMake sure that Deploy is selected in the Project drop-down list and select Primary Output from the list and click OK. You also can select other options depending upon the users of your application. Now, in the File System Editor window, select Web Application Folder and open it's Properties window. In this window, set the VirtualDirectory property to any name, say FinishedApp. FinshedApp will be the folder on the target machine where you will install this application. The name you set for this VirtualDirectory property should not already 22
exist on the target machine. If it does, the contents in the folder will be overwritten. Also, set the DefaultDocument property to any page in the application. The page you set in this property will be the default page for the Web Application. Once you are finished with the Properties window build the solution by selecting Build->Build WebSetup1 from the main menu. After the solution is built sucessfully, a WebSetup1.msi file is created in the Debug directory of the Web Setup project. The default path to the debug directory is as follows: C:\Documents and Settings\Administrator\MyDocuments\Visual Studio Projects\deploy\WebSetup1\Debug
23
file stored on the file system Structured data and metadata about the file is stored in SQL Server database, whereas the unstructured component is stored in the file system. Such files can be accessed both via Win32 file handling APIs as well as via SQL Server using T-SQL; doing the latter accesses the file data as a BLOB. Backing up and restoring the database backs up or restores the referenced files as well. SQL Server 2008 also natively supports hierarchical data, and includes T-SQL constructs to directly deal with them, without using recursive queries. The Full-Text Search functionality has been integrated with the database engine. According to a Microsoft technical article, this simplifies management and improves performance. Spatial data will be stored in two types. A "Flat Earth" (GEOMETRY or planar) data type represents geospatial data which has been projected from its native, spherical, coordinate system into a plane. A "Round Earth" data type (GEOGRAPHY) uses an ellipsoidal model in which the Earth is defined as a single continuous entity which does not suffer from the singularities such as the international dateline, poles, or map projection zone "edges". Approximately 70 methods are available to represent spatial operations for the Open Geospatial Consortium Simple Features for SQL, Version 1.1. SQL Server includes better compression features, which also helps in improving scalability. It enhanced the indexing algorithms and introduced the notion of filtered indexes. It also includes Resource Governor that allows reserving resources for certain users or workflows. It also includes capabilities for transparent encryption of data (TDE) as well as compression of backups. SQL Server 2008 supports the ADO.NET Entity Framework and the reporting tools, replication, and data definition will be built around the Entity Data Model. SQL Server Reporting Services will gain charting capabilities from the integration of the data visualization products from Dundas Data Visualization, Inc., which was acquired by Microsoft. On the management side, SQL Server 2008 includes the Declarative Management Framework which allows configuring policies and constraints, on the entire database or certain tables, declaratively. The version of SQL Server Management Studio included with SQL Server 2008 supports IntelliSense for
25
SQL queries against a SQL Server 2008 Database Engine. SQL Server 2008 also makes the databases available via Windows PowerShell providers and management .
Hardware Interfaces
It's a webbased project, so a robust hardware configuration is required. The hardware requirements are: i) Processor iii) RAM iv)Hard Disk : : : Intel(R) Pentium(R) Dual CPU Intel 1 GB minimum 2.5 GB for visual studio.net and 2.5GB for SQL server 2008
ii) Motherboard:
26
27
28
Flow Of Query:-
29
Chapter 7: Snapshots
Login Page:-
This is the main login page, where an expert and student can login also a new student can create his profile. Further if he need some more information regarding the query he check out various given links.
30
Expert Page:-
This is the account of expert. The Expert username and password is known and own by the site owner. He can pass these to whomsoever he feels trustworthy.
Here the the expert gets the list of various queries submitted by students. He can answer whichever query he feels like.
31
This is a a create profile page. If a user/student is new to the website he has to create his account by filling up the details. All the details have validation. When the profile of the student is created an enrolment no is autogenerated by the system, which is his username.
32
Student Page:-
33
This is the account of student where he can, as you can see the snapshot, update his profile, change his password, submit his query, view his previous queries and can logout.
34
Here the user will submit his query by filling up the details for subject, topic and the query.
35
The student can review his query after submission for any purpose.
Logout:36
When student clicks on the logout, he is directed to this page where he can further be directed to Login Page.
Validation Controls:40
The snapshots here show that validation controls are being used.
Easy to use 41
Timesharing in getting information Data is secured. Serves all possible queries. The best platform for students and experts. helps in real time projecting. Providing a specific expert that can help in avoiding the leakage of information.
42
43
44
45
References
1. 2. 3. 4. 5. A press Beginning C# C# Schools www.google.com www.dotnetspider.com www.w3cschools.com
46