EVA Solutions Pvt. LTD.: Six Months Training - Cum-Project Synopsis

Download as docx, pdf, or txt
Download as docx, pdf, or txt
You are on page 1of 24

Six Months Training cum-Project synopsis

On

Lawhelpline.com
at

EVA Solutions Pvt. Ltd.


(Training from Jan, 2015 to Present)

SUBMITTED BY
Shubhani Aggarwal
CE (8th Sem)
Roll No.: 11101073
Submitted To:
Name : Dr. Lakhwinder Kaur
Ranvir Kaur

Industrial Training Incharge


Name: Miss

University College of Engineering


Punjabi University, Patiala

PREFACE
The invention of the computer is regarded as a significant step towards the
progress of the mankind. Computer is highly sophisticated and sensitive
electronic device used for accurate and speedy manipulation based on certain
steps of possible that computer perform most of the human brain. To support life
as fast as today, computer is a necessary rather than a facility. The work which
early computers are used to do was mainly to solve mathematical problems.
However, today computers are used in almost every field.

The communication between computer and its user is through some language.
There are number of programming languages available to the programmer. I
used ASP.Net and database to develop Lawhelpline project

Abstract

Project is aimed at developing a Web application that enables individuals


to find a good lawyer based on the experiences of others.
Lawhelpline.com provides a platform to get legal questions answered, to
talk to a lawyer on the phone, and to find a competent lawyer without
wasting thousands of rupees on the wrong lawyer. The feedback ratings
are a critical part of the website, and are crucial to decide which lawyer
you want to hire. Apart from being useful for consumers seeking legal
advice, Lawhelpline.com serves as an excellent marketing platform for
lawyers. By answering a few questions a day on this website, lawyers can
not only build their online reputation via feedback ratings, but they can
also generate leads for legal services as long as they want.

Introduction to .NET

The .NET Framework (pronounced dot net framework) defines the environment that
you use to execute Visual Basic .NET applications and the services you can use
within those applications. One of the main goals of this framework is to make it easier to
develop applications that run over the Internet. However, this framework can also be used
to develop traditional business applications that run on the Windows desktop. To develop a
Visual Basic .NET application, you use a product called Visual Studio .NET
(pronounced Visual Studio dot net). This is actually a suite of products that includes
the three programming languages. Visual Studio also includes several other components
that make it an outstanding development product. One of these is the Microsoft
Development Environment, which youll be introduced to in a moment. Another is the
Microsoft SQL Server 2000 Desktop Engine (or MSDE). MSDE is a database engine
that runs on your own PC so you can use Visual Studio for developing database applications
that are compatible with Microsoft SQL Server. SQL Server in turn is a database management
system that can be used to provide the data for large networks of users or for Internet
applications. Programming languages supported by Visual Studio .NET Language
Description Visual Basic .NET Designed for rapid application development. Visual
C# .NET A new language that combines the features of Java and C++ and is suitable
for rapid application development. Visual C++ .NET Microsofts version of C++ that can be
used for developing high-performance applications. The .NET Framework provides a
common set of services that application programs written in a .NET language such as
Visual Basic .NET can use to run on various operating systems and hardware platforms.

The .NET Framework is...


A component model for the internet
The new approach to building large scale distributed systems for the Internet
Provides the capability to integrate multiple devices.
Built around the tools and protocols (XML, WSDL, SOAP, HTTP) that are becoming
standard on the Internet.

The .Net Framework Design Goals


Component Development for the Internet
Cross-Language Development
Inheritance, Debugging, Exception handling
Reliability and Security

Simple Development and Deployment


Device-agnostic

The .NET Framework is divided into two main components:

The .NET Framework Class Library


The Common Language Runtime

The .NET Framework Class Library consists of segments of pre-written code called
classes that provide many of the functions that you need for developing .NET
applications. For instance, the Windows Forms classes are used for developing Windows
Forms applications. The ASP.NET classes are used for developing Web Forms
applications. And other classes let you work with databases, manage security, access
files, and perform many other functions. Although its not apparent in this figure, the
classes in the .NET Framework Class Library are organized in a hierarchical structure.
Within this structure, related classes are organized into groups called namespaces. Each
namespace contains the classes used to support a particular function. For example, the
System.Windows.Forms namespace contains the classes used to create forms and the
System.Data namespace contains the classes you use to access data.

The Common Language Runtime, or CLR, provides the services that are needed for
executing any application thats developed with one of the .NET languages. This is
possible because all of the .NET languages compile to a common intermediate language. The
CLR also provides the Common Type System that defines the data types that are used
by all the .NET languages. That way, you can use more than one of the .NET
languages as you develop a single application without worrying about incompatible data
types.

The .NET Framework


Description: -

.NET applications do not access the operating system or computer hardware directly.
Instead, they use services of the .NET Framework, which in turn access the operating
system and hardware.
The .NET Framework consists of two main components: the .NET Framework Class
Library and the Common Language Runtime.
The .NET Framework Class Library provides pre-written code in the form of classes that
are available to all of the .NET programming languages. This class library consists of
hundreds of classes.
The Common Language Runtime (CLR) is the foundation of the .NET Framework. It
manages the execution of .NET programs by coordinating essential functions such as
memory management, code execution, security, and other services. Because .NET
applications are managed by the CLR, they are called managed applications.
The Common Type System (CTS) is a component of the CLR that ensures that
all .NET applications use the same basic data types regardless of what programming
languages were used to develop the applications.

Two other components of Visual Studio .NET Component Description

Microsoft Development Environment:- The Integrated Development Environment (IDE)


that you use for developing applications in any of the three languages.

Microsoft SQL Server 2000 Desktop Engine:- A database engine that runs on your own
PC so you can use Visual Studio for developing database applications that are
compatible with Microsoft SQL Server.

Benefits of .Net

Interoperability between languages and execution environments.


Uniformity in schema or formats for Data Exchange using XML, XSL.
Extend or use existing code that is valid.
Programming complexity of environment is reduced.

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

HISTORY
After the release of Internet Information Services 4.0 in 1997, Microsoft
began researching possibilities for a new web application model that

would solve common complaints about ASP, especially with regard to


separation of presentation and content and being able to write "clean"
code. Mark Anders, a manager on the IIS team, and Scott Guthrie, who
had joined Microsoft in 1997 after graduating from Duke University, were
tasked with determining what that model would look like. The initial
design was developed over the course of two months by Anders and
Guthrie, and Guthrie coded the initial prototypes during the Christmas
holidays in 1997.
The initial prototype was called "XSP"; Guthrie explained in a 2007
interview that, "People would always ask what the X stood for. At the time
it really didn't stand for anything. XML started with that; XSLT started with
that. Everything cool seemed to start with an X, so that's what we
originally named it. The initial prototype of XSP was done using Java, but it
was soon decided to build the new platform on top of the Common
Language Runtime (CLR), as it offered an object-oriented programming
environment, garbage collection and other features that were seen as
desirable features that Microsoft's Component Object Model platform
didn't support. Guthrie described this decision as a "huge risk", as the
success of their new web development platform would be tied to the
success of the CLR, which, like XSP, was still in the early stages of
development, so much so that the XSP team was the first team at
Microsoft to target the CLR.
With the move to the Common Language Runtime, XSP was reimplemented in C# (known internally as "Project Cool" but kept secret
from the public), and the name changed to ASP+, as by this point the new
platform was seen as being the successor to Activer Server Pages, and the
intention was to provide an easy migration path for ASP developers.
Anders first demonstrated ASP+ at the ASP Connections conference in
Phoenix, Arizona on May 2, 2000. Demonstrations to the wide public and
initial beta release of ASP+ (and the rest of the .NET Framework) came at
the 2000 Professional Developers Conference on July 11, 2000 in olando,
Florida. During Bill Gates' keynote presentation, Fujitsu demonstrated

ASP+ being used in conjunction with COBOL, and support for a variety of
other languages was announced, including Microsoft's new Visual Basic
.NET and C# languages, as well as Python and Perl support by way of
interoperability tools created by Active State.
Once the ".NET" branding was decided on in the second half of 2000, it
was decided to rename ASP+ to ASP.NET. Mark Anders explained on an
appearance on The MSDN Show that year that, "The .NET initiative is
really about a number of factors, it's about delivering software as a
service, it's about XML and web services and really enhancing the Internet
in terms of what it can do ... we really wanted to bring its name more in
line with the rest of the platform pieces that make up the .NET
framework."
After four years of development, and a series of beta releases in 2000 and
2001, ASP.NET 1.0 was released on January 5, 2002 as part of version 1.0
of the .NET Framework. Even prior to the release, dozens of books had
been written about ASP.NET, and Microsoft promoted it heavily as part of
their platform for web services. Guthrie became the product unit manager
for ASP.NET, and development continued apace, with version 1.1 being
released on April 24, 2003 as a part of Windows Server 2003. This release
focused on improving ASP. Nets support for mobile devices.

CHARACTERISTICS
Pages

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, JrSP, and ASP. With
ASP.Net Framework 2.0, Microsoft introduced a new code-behind model
which allows static text to remain on the .aspx page, while dynamic code
remains in the .asp.cs page.
Code-behind model

Microsoft recommends dealing with dynamic program code by using the


code-behind model, which places this code in a separate file or in a
specially designated script tag. Code-behind files typically have names
like MyPage.aspx.cs or MyPage.aspx.vb while the page file is MyPage.aspx
(same filename as the page file (ASPX), but with the final extension
denoting the page language). This practice is automatic in Microsoft Visual
Studio and other IDEs. When using this style of programming, the
developer writes code to respond to different events, like the page being
loaded, or a control being clicked, rather than a procedural walk through
the document.
ASP.NET's code-behind model marks a departure from Classic ASP in that
it encourages developers to build applications with separation of
presentation and content in mind. In theory, this would allow a web
designer, for example, to focus on the design markup with less potential
for disturbing the programming code that drives it. This is similar to the
separation of the controller from the view in model-view-controller
frameworks.

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 serverside code.

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

Custom controls

Programmers can also build custom controls for ASP.NET applications.


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

ASP.NET

uses

visited

composites

rendering

technique.

During

compilation, the template (.aspx) file is compiled into initialization code


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

Actual requests for the page are processed through a number of steps.
First, during the initialization steps, an instance of the page class is
created and the initialization code is executed. This produces the initial
control tree which is now typically manipulated by the methods of the
page in the following steps. As each node in the tree is a control
represented as an instance of a class, the code may change the tree
structure as well as manipulate the properties/methods of the individual
nodes. Finally, during the rendering step a visitor is used to visit every
node in the tree, asking each node to render itself using the methods of
the visitor. The resulting HTML output is sent to the client.
After the request has been processed, the instance of the page class is
discarded and with it the entire control tree. This is a source of confusion
among novice ASP.NET programmers who rely on class instance members
that are lost with every page request/response cycle.

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 "codebehind" 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.

EXTENSION
Microsoft has released some extension frameworks that plug into ASP.NET
and extend its functionality. Some of them are:
ASP.NET AJAX
An extension with both client-side as well as server-side components for writing ASP.NET pages that
incorporate AJAX functionality. ASP.NET MVC Framework

ASP.NET COMPARED WITH ASP CLASSIC


ASP.NET simplifies developers' transition from Windows application
development to web development by offering the ability to build pages
composed of controls similar to a Windows user interface. A web control,
such as a button or label, functions in very much the same way as its
Windows counterpart: code can assign its properties and respond to its
events. Controls know how to render themselves: whereas Windows
controls draw themselves to the screen, web controls produce segments
of HTML and JavaScript which form parts of the resulting page sent to the
end-user's browser.

ASP.NET encourages the programmer to develop applications using an


event-drivenGUI

model,

rather

than

in

conventional

web-scripting

environments like ASP and PHP. The framework combines existing


technologies such as JavaScript with internal components like "View State"
to bring persistent (inter-request) state to the inherently stateless web
environment.
Other differences compared to ASP classic are:

Compiled code means applications run faster with more design-time errors trapped at the
development stage.

Significantly improved run-time error handling, making use of exception handling using trycatch blocks.

Similar metaphors to Microsoft Windows applications such as controls and events.

An extensive set of controls and class libraries allows the rapid building of applications, plus
user-defined controls allow commonly-used web template, such as menus. Layout of these
controls on a page is easier because most of it can be done visually in most editors.

ASP.NET uses the multi-language capabilities of the .NET Common Language Runtime,
allowing web pages to be coded in VB.NET, C#, J#, Delphi.NET, Chrome etc.

Ability to cache the whole page or just parts of it to improve performance.

Ability to use the code-behind development model to separate business logic from
presentation.

Ability to use true object-oriented design for programming both page and controls

If an ASP.NET application leaks memory, the ASP.NET runtime unloads the AppDomain
hosting the erring application and reloads the application in a new AppDomain.

Session state in ASP.NET can be saved in a Microsoft SQL Server database or in a separate
process running on the same machine as the web server or on a different machine. That way
session values are not lost when the web server is reset or the ASP.NET worker process is
recycled.

Versions of ASP.NET prior to 2.0 were criticized for their lack of standards compliance. The
generated HTML and JavaScript sent to the client browser would not always validate against
W3C/ECMA standards. In addition, the framework's browser detection feature sometimes
incorrectly identified web browsers other than Microsoft's own Internet Explorer as
"downlevel" and returned HTML/JavaScript to these clients with some of the features
removed, or sometimes crippled or broken. However, in version 2.0, all controls generate
valid HTML 4.0, XHTML 1.0 (the default) or XHTML 1.1 output, depending on the site
configuration. Detection of standards-compliant web browsers is more robust and support for
Cascading Style Sheets is more extensive.

Web Server Controls: these are controls introduced by ASP.NET for providing the UI for the
web form. These controls are state managed controls and are WYSIWYG controls.

FRAMEWORKS
It is not essential to use the standard webforms development model when
developing with ASP.NET. Noteworthy frameworks designed for the
platform include:

Base One Foundation Component Library (BFC) is a RAD framework for building .NET
database and distributed computing applications.

DotNetNuke is an open-source solution which comprises both a web application framework


and a content management system which allows for advanced extensibility through modules,
skins, and providers.

Castle Monorail, an open-source MVC framework with an execution model similar to Ruby
on Rails. The framework is commonly used with Castle ActiveRecord, an ORM layer built on
NHibernate.

Spring.NET, a port of the Spring framework for Java.

Skaffold.NET, A simple framework for .NET applications, used in enterprise applications.

Introduction to SQL
Microsoft SQL Server

Microsoft SQL Server is a powerful relational database management system catering to highend users with advanced needs. Along with Oracle, Microsoft SQL Server is widely regarded
as one of the two main full-featured database systems on the market today .The structured
query language is an industry-standard language used for manipulation of data in a
relational database. The major SQL commands of interest to database users are
SELECT, INSERT, JOIN and UPDATE.

Microsoft SQL Server is a full-featured relational database management system


(RDBMS) that offers a variety of administrative tools to ease the burdens of database
development, maintenance and administration.

SQL
Most large-scale databases use the structured query language(SQL) to facilitate user and
administrator interactions. This language offers a flexible interface for databases of all
shapes and sizes. The first important point to make is that database transactions are made in
SQL, whether you realize it or not. Nowadays, there are a large number of graphical user
interfaces (GUIs) that simplify database administration tasks. If you're a SQL Server user,
you may be familiar with tools like Enterprise Manager. There are also quite a few thirdparty applications that interact with different databases (in fact, many of these can work
with multiple database platforms simultaneously.) Did you ever wonder how these
applications work? Thats right! They use SQL! The frontend translates your mouse clicks
and text entries into SQL and then speaks to the database in the universal language of
SQL.

A review of basic SQL queries


Here we present a brief review of four basic SQL queries.
SQL SELECT Statement

This query is used to select certain columns of certain records from one or more database
tables.

SELECT * from emp


selects all the fields of all the records from the table named 'emp'

SELECT empno, ename from emp


selects the fields empno and ename for all of the records from the table named 'emp'

SELECT * from emp where empno < 100


selects all records from the table named 'emp' where the value of the field empno is less than
100

SELECT * from article, author where article.authorId = author.authorId selects all records
from the tables named 'article' and 'author' that have the same value of the field authorId

SQL INSERT Statement


This query is used to insert a record into a database table.
INSERT INTO emp(empno, ename) values(101, 'John Guttag')
inserts a record in to the emp table and sets its empno field to 101 and its ename field
to 'John Guttag'

SQL UPDATE Statement


This query is used to modify existing records in a database table.
UPDATE emp SET ename = 'Eric Gamma' WHERE empno = 101
updates the record whose empno field is 101 by setting its ename field to 'Eric Gamma'

SQL DELETE Statement

This query is used to delete existing record(s) from a database table.


DELETE FROM emp WHERE empno = 101
deletes the record whose empno field is 101 from the emp table

Note that its not good practice to allow users to actually delete records from your
database. This is open to abuse an human error. A more safer method is to flag a field with
an end date. I.e When a user "deletes" a record, what really happens is this.
UPDATE emp SET enddate = GetNow(date) WHERE empno = 101\
To remove this record from the users reach in future quieries.
Select * FROM emp WHERE enddate = Null

Defining the connection string


con.connectionstring=configurationmanager.connectionstring("ApplicationServices").connect
ionstring

About the Project

1 Title Of the Project:


LAW HELPLINE

2 Objective of the project:

This project is aimed at developing a Web application that enables


individuals to find a good lawyer based on the experiences of others.
Lawhelpline.com provides a platform to get legal questions answered, to
talk to a lawyer on the phone, and to find a competent lawyer without
wasting thousands of rupees on the wrong lawyer. The feedback ratings
are a critical part of the website, and are crucial to decide which lawyer
you want to hire. Apart from being useful for consumers seeking legal
advice, Lawhelpline.com serves as an excellent marketing platform for
lawyers. By answering a few questions a day on this website, lawyers can
not only build their online reputation via feedback ratings, but they can
also generate leads for legal services as long as they want.

3 Software Specifications:

Technology Implemented
: Dot net
Language Used
: Asp.Net
Database
: SQL Server
User Interface Design
: HTML
Web Browser
: Opera

4 Hardware Requirements:

Processor
:
Operating System
RAM
:
Hardware Devices
Hard disk
:
Display

Pentium, AMD or Higher Version.


:
Windows XP/ Windows 7/ Linux
256 MB, 2GB recommended
:
Keyboard with mouse
10GB or More
:
Standard Output Display

5 Backend

Client registration table : This table contains data related to


Client Signup.

Login table : This table contains data for USER (client and
lawyer) Login .

Lawyer registration table: This table contains data related to


Lawyers Signup.

6 Modules:

Main and Login Page:


o The main page, neatly designed page, here login option is
provided to login. Also new signup option is provided to for
new user to signup.

Lawyer signup:

.
Client signup:

Forget password:

Legal Digest : this module will contain the database of all the legal
laws and the current amendments done to them .

7 Future Scope of the Project


The present project is developing as web application. In future
we would like to develop it for portable devices like android cell
phones or iphone cell phones.
Client will be in touch with his lawyer 24*7

You might also like