This document outlines the phases of development for a .NET library management system portfolio. Phase 1 involved designing and developing a web application front-end using ASP.NET with validation rules and AJAX controls. Phase 2 replaced the data access layer with one using LINQ and stored procedures. Phase 3 added a WCF service hosted by IIS using SSL and consumed by a Silverlight client. The final project expanded functionality to include searching, editing members, renewing memberships, and promoting juveniles to adults.
3. Library Project Phase 1
Web Application Front-End
Introduction:
In phase 1, the goal was to design and develop a front-end web application for interacting with the library
system. The web application will utilize the provided assemblies: Business Layer and Data Access Layer, to
work with the library system.
Project Goals:
To design and develop a user interface for:
â adding new members
â checking books in, checking books out
â looking up member's information
â viewing what items have been loaned out to a member.
Provide validations for member input and book input.
Adult member can be added to Adult and Member tables.
Juvenile member can be added to Juvenile and Member tables.
Provide error-handling
Overdue books must be highlighted.
AJAX Update Panel or AJAX Toolkit controls must be used at least once.
Librarians must be authenticated into the web application.
Forms-based authentication and authorization must be used.
5. Library Project Phase 1
Web Application Front-End
Member Information: Overdue books are highlighted. Validations such as expired membership,
overdue books, and maximum limit of books on loan are provided.
6. Sample code using C# to populate loaned books information to the GridView.
Library Project Phase 1
Web Application Front-End
7. Library Project Phase 1
Web Application Front-End
Source code where AJAX UpdatePanel and AJAX Toolkit controls were used
to render partial page postback for the GridView.
8. Used Javascript to enable/disable the Check In/Check Out buttons.
Library Project Phase 1
Web Application Front-End
9. Library Project Phase 1
Web Application Front-End
In adding a new member, validations such as: minors cannot be 18 yrs and older,
must have an adult sponsor, sponsor's membership must not be expired, etc. are provided.
10. Sample code to add a new member and provide input validations.
Library Project Phase 1
Web Application Front-End
11. Library Project Phase 2
Business Layer
Introduction:
For this phase, the assemblies provided to support the user interface in Phase 1 will then be replaced by
the assemblies that will be developed in this phase.
Project Goals:
Use LINQ to Entities to implement data access logic for querying and updating the database.
Use at least two T-SQL stored procedures.
Provide error-handling and business rule validations.
12. Sample code from the business layer that uses LINQToEntities
to query and update the database.
Library Project Phase 2
Business Layer
13. T-SQL Stored Procedure was used to check if a certain membership has expired.
Library Project Phase 2
Business Layer
15. Library Project Phase 3
WCF Service
Introduction:
The library system must now be interoperable with other systems. My task was to provide a concept system that
utilizes Web Services and Silverlight. WCF was used to implement the service.
Project Goals:
Create a WCF Service that calls into the business layer.
The WCF Service must support he ff:
WsHttpBinding
Website must be hosted in IIS
Website must use Secured Socket Layer SSL, and a self-signed server certificate
Update the presentation layer to call the WCF service.
Use DataContracts for all classes passed between client and host.
Create a Silverlight web page to display information on overdue books.
The Silverlight web page must use WCF to download overdue book data and display data in the browser.
16. Library Project Phase 3
WCF Service
Library Service Contract shows the ILibrary interface and its
Service and Operation Contracts.
17. Library Project Phase 3
WCF Service
Service Implementation code sample that calls into the business layer of the DataAccess tier.
18. Library Project Phase 3
WCF Service
In the Web Client, a Service Reference was configured to access the Service.
20. Final Project
Introduction:
In the previous phase, not all functionality that the Librarian needed were provided. In this final project, more
library functionality were added.
Project Goals:
Design and develop a front-end web application to include:
Search function must allow to search by name, address, or member ID.
Edit function may edit the name, address, birthday and may change sponsor for juvenile member.
Renew membership
Promote juvenile to adult membership
Use LINQ to Entities to implement data access logic
Validate all user input
Provide error-handling feature
AJAX Update Panel or AJAX Toolkit controls must be used