ug project 2008 with linq & ajax idan hodor boaz farkash supervisor: ilana david

21
UG Project 2008 With LINQ & AJAX Idan Hodor Boaz Farkash Supervisor: Ilana Davi

Upload: donald-kelley

Post on 18-Jan-2016

214 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: UG Project 2008 With LINQ & AJAX Idan Hodor Boaz Farkash Supervisor: Ilana David

UG Project 2008With LINQ & AJAX

Idan HodorBoaz Farkash

Supervisor: Ilana David

Page 2: UG Project 2008 With LINQ & AJAX Idan Hodor Boaz Farkash Supervisor: Ilana David

Project GoalsRedesign and rebuild the UG system:

1.The new system should use current technologies, such as LINQ and AJAX, and improve the usability and functionality of the existing system.

2.The new system should rely and co-exist with the current faculty Portal database, rather than manage an independent and duplicate set of data.

Page 3: UG Project 2008 With LINQ & AJAX Idan Hodor Boaz Farkash Supervisor: Ilana David

What we’ve learned1. LINQ – How to use it, and how it affects web

projects.

2. AJAX – How to use it to create an enhanced user experience.

3. Deepened our knowledge and understanding of complex web projects.

4. Experienced working on a system with real life limitations, unlike an ideally planned and self built system.

Page 4: UG Project 2008 With LINQ & AJAX Idan Hodor Boaz Farkash Supervisor: Ilana David

3-Tier Design

Page 5: UG Project 2008 With LINQ & AJAX Idan Hodor Boaz Farkash Supervisor: Ilana David

Layer 0 - Database

ANAM UG Portal

• Join the Portal database• Get rid of redundant UG tables

Page 6: UG Project 2008 With LINQ & AJAX Idan Hodor Boaz Farkash Supervisor: Ilana David

Layer 0 - Database

Page 7: UG Project 2008 With LINQ & AJAX Idan Hodor Boaz Farkash Supervisor: Ilana David

LINQ – Why do we need it?

Relational DatabaseRelational Database

OO objectsOO objects

Impedance M

ismatch

Page 8: UG Project 2008 With LINQ & AJAX Idan Hodor Boaz Farkash Supervisor: Ilana David

LINQ - Advantages• Data querying is moved from the database to the

development environment.▫Compile time syntax checking.▫Intellisense▫Debugging

• Database tables and views are automatically mapped to OO objects. ▫Foreign keys are translated to references to

other objects.▫Saves on join operations.

Page 9: UG Project 2008 With LINQ & AJAX Idan Hodor Boaz Farkash Supervisor: Ilana David

LINQ implications on DAL & BL

•Instead of SPs in the database, the DAL is responsible for querying the database with LINQ.▫DAL does more heavy lifting.

•With LINQ, database data can be quickly mapped to BL objects by the DAL. ▫BL class implementation becomes thinner.

Page 10: UG Project 2008 With LINQ & AJAX Idan Hodor Boaz Farkash Supervisor: Ilana David

Layer 1 - DAL

Putting LINQ to work in Visual Studio:

Page 11: UG Project 2008 With LINQ & AJAX Idan Hodor Boaz Farkash Supervisor: Ilana David

Layer 1 - DAL

A typical DAL method:

Page 12: UG Project 2008 With LINQ & AJAX Idan Hodor Boaz Farkash Supervisor: Ilana David

Layer 2 – Business Logic

User Classes:

Page 13: UG Project 2008 With LINQ & AJAX Idan Hodor Boaz Farkash Supervisor: Ilana David

Layer 2 – Business Logic

Course Classes:

Page 14: UG Project 2008 With LINQ & AJAX Idan Hodor Boaz Farkash Supervisor: Ilana David

Layer 2 – Business Logic

Utility Classes:

Page 15: UG Project 2008 With LINQ & AJAX Idan Hodor Boaz Farkash Supervisor: Ilana David

Layer 3- Presentation Layer

To be visually appealing

What do we expect from a modern web site?

To be responsive and easy to use

To feel like a web application, not a web site.

How?

Page 16: UG Project 2008 With LINQ & AJAX Idan Hodor Boaz Farkash Supervisor: Ilana David

Layer 3- Presentation Layer

AJAXAJAXAsynchronous Javascript and XML

Page 17: UG Project 2008 With LINQ & AJAX Idan Hodor Boaz Farkash Supervisor: Ilana David

Layer 3- Presentation Layer

Master Pages – give the site one constant look and feel.

More design technologies

Custom controls for better code reuse and modularity.

CSS to create a modern design that is also interchangeable.

Page 18: UG Project 2008 With LINQ & AJAX Idan Hodor Boaz Farkash Supervisor: Ilana David

Layer 3- Presentation Layer

We used Ajax auto complete controls, these controls use Web Service functions, each for different search. The use of Web Service helps the System run smoothly, and enhance the system performance.

Ajax Controls

The same controls can get different relevant information.

Page 19: UG Project 2008 With LINQ & AJAX Idan Hodor Boaz Farkash Supervisor: Ilana David

Layer 3- Presentation Layer

Ajax Controls

We can notice that Admin and a regular user has different privileges, and see different controls .

Postback happens asynchronously, rendering from the DB only the relevant information. This functionality add more usability and enhance system performance.

Page 20: UG Project 2008 With LINQ & AJAX Idan Hodor Boaz Farkash Supervisor: Ilana David

Layer 3- Presentation Layer

JavaScript

JavaScript is a client side functionality, that add additional functionality that otherwise

was impossible to do .

Use of JavaScript to make the system run more smoothly, Very nice looking gadgets that are fun to have.

Page 21: UG Project 2008 With LINQ & AJAX Idan Hodor Boaz Farkash Supervisor: Ilana David

Thank you for listening