SlideShare a Scribd company logo
1 of 7
Library Application – ASP.NET Web Project


Objective: Transform the Library Windows application into an ASP.NET web application. All
functionalities that were included in the windows application must also made available in the web
application. Additional functionality includes a login control that limits access to only those users that
are part of the librarian role. Juvenile members who turn 18 must be converted to adult members.
An entry screen for new items in the library must be added.

Summary: This project demonstrates the use of combination of ASP.NET development with login
control that’s new in ASP.NET 2.0

   •   User input validation, using the Required Field Validator, Compare Validator, Regular
       Expression Validator, and Range Validator.
   •   Data binding to a data grid control and related manipulation.
   •   Incorporate middle tier business tier for scalability.
   •   Use of session object to maintain application state.
   •   Incorporate both client and server side validation.
   •   Regular expressions are used for input validation.

The basic functions of the application are as follows:
   • Add new members to the library. A differentiation is
      made between adult and juvenile members. Adult
      members are 18 or older.
   • View member information such as address, phone
      number, membership expiration date, and books
      currently checked out.
   • Check out available books.
   • Check in books.
   • Add new books to the library.

It was created as a multi-tier application with the following
 layers:
    • User interface – (WebApp)
    • Business tier – (LibraryBusiness and Entities)
    • Data Access layer – (DataAccess)
    • SQL Server DB – Location for all data

The application’s Solution Explorer can be seen to the right.
The user interface handles all data entry from the librarian.
The data is validated by the business tier before proceeding
to the database via the data access layer. All library data
resides in a SQL Server database.
Screen shots of the application in use




   The initial page of the application is the login page. Users are required to login using the login
   control. Only members of the librarian role have authorization to continue.




Upon successful login the library home page is displayed which is a master page. The master page
is used to provide consistent look and feel for the entire application. The librarian can retrieve
member information, add members, or add items from here.
Member information can be displayed for any member in the library based on their member ID.
Name, address, phone number, expiration date, and a list of checked out items are diplayed. The call
to the database passes through 2 additional layers on the server side before it retrieves member
information from the database. First the business layer is called and then the data access layer is
called from the business layer. The data access layer executes the appropriate stored procedure
residing on the SQL Server database. If an unknown member ID is entered the user is prompted to
enter a valid ID. The Required Field Validator ensures that the member ID textbox is not empty
before a postback is processed to the server. The Compare Validator is used to ensure that an
integer is entered in the member ID textbox before a postback is processed. Individual items can be
checked back in by clicking the appropriate Check In button in the checked out items data grid.
Highlighted rows in the data grid denote over due items.
Items can be checked out from the member information page by clicking the Check Out Item button.
The current member ID is saved as a session variable and the check out item page is displayed.
Additional items for the current member can be checked out by typing in the ISBN, copy number, and
clicking the Check Out Item button. Required Field Validators are used on both of the textboxes to
ensure information is entered before postback processing happens at the server. Compare
Validators are also used to ensure integers are entered. A successful check out is denoted by a red
“Item Checked Out” label at the bottom of the page. If the item cannot be found the check out fails
and an appropriate message is displayed. If the item is on loan to another member a message is
displayed. Members can only have 4 items checked out at any given time. If an attempt is made to
check out additional items the check out fails and a message is diplayed. The current member’s
information can be displayed by clicking the Display Member Information button. The GetMemberInfo
page is diplayed and populated using the member ID session variable. The session state duration is
20 minutes. If the Display Member Information button is clicked after the duration has elapsed the
login page is displayed and the user must login again.
New adults can be added to the library by clicking the Add Adult Member hyperlink. First name, last
name, street address, city, state, and zip code are required fields. All of these textboxes have
Required Field Validators. In addition, all textboxes on this page have Regular Expression Validators
to ensure that each piece of information is entered in the proper format before a postback occurs.
For example, the first name must have the first letter capitalized and the remaining letters lower case.
It cannot be longer than 15 characters total. The regular expression used is ^[A-Z]{1}[a-zs]{0,14}$.
Click the Add Adult button after all of the new member information is entered to add the new member.
If the addition of the new member to the database was successful the GetMemberInfo page is
displayed with the new member’s information. See below. Unsuccessful additions are denoted by a
label at the bottom of the page.
New juveniles can be added to the library by clicking the Add Juvenile Member hyperlink. First name,
last name, adult member ID, and birthdate are required fields. All of these textboxes have Required
Field Validators. In addition, all textboxes except for the birthdate textbox on this page have Regular
Expression Validators to ensure that each piece of information is entered in the proper format before
a postback occurs. The birthdate textbox utilizes a range validator to ensure the new applicant is
between the ages of 0 to 18. Click the Add Juvenile button to add the new member. If the addition of
the new member to the database was successful the GetMemberInfo page is displayed with the new
member’s information. See below. Unsuccessful additions are denoted by a label at the bottom of
the page.
New items can be added to the library by clicking the Add Item hyperlink. ISBN, author, cover, title,
whether the item is loanable or not, and the translation are all required fields. Validation is performed
by validators on the client side to ensure proper formatting before a postback occurs. Click the Add
Item button to add the new item to the database. If successful a label will be shown indicating what
copy number is assigned to the item. Since a library may have multiple copies of the same book if
matching ISBN numbers are found the next sequential copy number is assigned to the new addition.
Using the screen shot above as an example, if the library already had a copy of Our Legacy by John
Hannah the new copy number would be 2 instead of 1. Any errors in adding the new item will be
displayed in a label denoting the reason for the failed addition.

More Related Content

Similar to Library Application ASP.NET Web Project

Library Windows Project
Library Windows ProjectLibrary Windows Project
Library Windows ProjectRick Massouh
 
Delma Hagen Portfolio
Delma Hagen PortfolioDelma Hagen Portfolio
Delma Hagen Portfoliodelhagen
 
Genevieve De La Cruz .Net Portfolio
Genevieve De La Cruz .Net PortfolioGenevieve De La Cruz .Net Portfolio
Genevieve De La Cruz .Net Portfoliogenevievedelacruz
 
Nj 09 Q4 Paul Kadzielawa
Nj 09 Q4 Paul KadzielawaNj 09 Q4 Paul Kadzielawa
Nj 09 Q4 Paul KadzielawaPKadzielawa
 
Net Portfolio Shade
Net Portfolio ShadeNet Portfolio Shade
Net Portfolio Shadefolageshin
 
Red Stampede User Guide: Analytics
Red Stampede User Guide: AnalyticsRed Stampede User Guide: Analytics
Red Stampede User Guide: AnalyticsHFT
 
.NET Portfolio
.NET Portfolio.NET Portfolio
.NET Portfoliolarel
 
Rinkeshkumar Bhagat Portfolio
Rinkeshkumar Bhagat PortfolioRinkeshkumar Bhagat Portfolio
Rinkeshkumar Bhagat PortfolioRinkeshkumar15
 
Rinkeshkumar Bhagat Portfolio
Rinkeshkumar Bhagat PortfolioRinkeshkumar Bhagat Portfolio
Rinkeshkumar Bhagat PortfolioRinkeshkumar15
 
Jeff Huber Portfoilio
Jeff Huber PortfoilioJeff Huber Portfoilio
Jeff Huber PortfoilioJeffHuber
 
Data_Validation_Process_Explained
Data_Validation_Process_ExplainedData_Validation_Process_Explained
Data_Validation_Process_ExplainedDale Moreton
 
Action Guide Reg Process
Action Guide Reg ProcessAction Guide Reg Process
Action Guide Reg Processceleroo
 
13088674 oracle-adf-11g-learning-application-my-procurement-application
13088674 oracle-adf-11g-learning-application-my-procurement-application13088674 oracle-adf-11g-learning-application-my-procurement-application
13088674 oracle-adf-11g-learning-application-my-procurement-applicationmuzaffar1986
 
Online shopping ecommerce java project
Online shopping ecommerce java projectOnline shopping ecommerce java project
Online shopping ecommerce java projectTutorial Learners
 

Similar to Library Application ASP.NET Web Project (20)

Library Windows Project
Library Windows ProjectLibrary Windows Project
Library Windows Project
 
Delma Hagen Portfolio
Delma Hagen PortfolioDelma Hagen Portfolio
Delma Hagen Portfolio
 
Genevieve De La Cruz .Net Portfolio
Genevieve De La Cruz .Net PortfolioGenevieve De La Cruz .Net Portfolio
Genevieve De La Cruz .Net Portfolio
 
Nj 09 Q4 Paul Kadzielawa
Nj 09 Q4 Paul KadzielawaNj 09 Q4 Paul Kadzielawa
Nj 09 Q4 Paul Kadzielawa
 
Net Portfolio Shade
Net Portfolio ShadeNet Portfolio Shade
Net Portfolio Shade
 
Pudiya Puthagam
Pudiya PuthagamPudiya Puthagam
Pudiya Puthagam
 
Red Stampede User Guide: Analytics
Red Stampede User Guide: AnalyticsRed Stampede User Guide: Analytics
Red Stampede User Guide: Analytics
 
.NET Portfolio
.NET Portfolio.NET Portfolio
.NET Portfolio
 
.NET Portfolio
.NET Portfolio.NET Portfolio
.NET Portfolio
 
Rinkeshkumar Bhagat Portfolio
Rinkeshkumar Bhagat PortfolioRinkeshkumar Bhagat Portfolio
Rinkeshkumar Bhagat Portfolio
 
Rinkeshkumar Bhagat Portfolio
Rinkeshkumar Bhagat PortfolioRinkeshkumar Bhagat Portfolio
Rinkeshkumar Bhagat Portfolio
 
E space abstract
E   space abstractE   space abstract
E space abstract
 
171846965 projects
171846965 projects171846965 projects
171846965 projects
 
.Net Portfolio
.Net Portfolio.Net Portfolio
.Net Portfolio
 
Tally portal helper
Tally portal helperTally portal helper
Tally portal helper
 
Jeff Huber Portfoilio
Jeff Huber PortfoilioJeff Huber Portfoilio
Jeff Huber Portfoilio
 
Data_Validation_Process_Explained
Data_Validation_Process_ExplainedData_Validation_Process_Explained
Data_Validation_Process_Explained
 
Action Guide Reg Process
Action Guide Reg ProcessAction Guide Reg Process
Action Guide Reg Process
 
13088674 oracle-adf-11g-learning-application-my-procurement-application
13088674 oracle-adf-11g-learning-application-my-procurement-application13088674 oracle-adf-11g-learning-application-my-procurement-application
13088674 oracle-adf-11g-learning-application-my-procurement-application
 
Online shopping ecommerce java project
Online shopping ecommerce java projectOnline shopping ecommerce java project
Online shopping ecommerce java project
 

Recently uploaded

Industrial Policy - 1948, 1956, 1973, 1977, 1980, 1991
Industrial Policy - 1948, 1956, 1973, 1977, 1980, 1991Industrial Policy - 1948, 1956, 1973, 1977, 1980, 1991
Industrial Policy - 1948, 1956, 1973, 1977, 1980, 1991RKavithamani
 
POINT- BIOCHEMISTRY SEM 2 ENZYMES UNIT 5.pptx
POINT- BIOCHEMISTRY SEM 2 ENZYMES UNIT 5.pptxPOINT- BIOCHEMISTRY SEM 2 ENZYMES UNIT 5.pptx
POINT- BIOCHEMISTRY SEM 2 ENZYMES UNIT 5.pptxSayali Powar
 
Mastering the Unannounced Regulatory Inspection
Mastering the Unannounced Regulatory InspectionMastering the Unannounced Regulatory Inspection
Mastering the Unannounced Regulatory InspectionSafetyChain Software
 
Hybridoma Technology ( Production , Purification , and Application )
Hybridoma Technology  ( Production , Purification , and Application  ) Hybridoma Technology  ( Production , Purification , and Application  )
Hybridoma Technology ( Production , Purification , and Application ) Sakshi Ghasle
 
Introduction to AI in Higher Education_draft.pptx
Introduction to AI in Higher Education_draft.pptxIntroduction to AI in Higher Education_draft.pptx
Introduction to AI in Higher Education_draft.pptxpboyjonauth
 
Employee wellbeing at the workplace.pptx
Employee wellbeing at the workplace.pptxEmployee wellbeing at the workplace.pptx
Employee wellbeing at the workplace.pptxNirmalaLoungPoorunde1
 
The basics of sentences session 2pptx copy.pptx
The basics of sentences session 2pptx copy.pptxThe basics of sentences session 2pptx copy.pptx
The basics of sentences session 2pptx copy.pptxheathfieldcps1
 
How to Make a Pirate ship Primary Education.pptx
How to Make a Pirate ship Primary Education.pptxHow to Make a Pirate ship Primary Education.pptx
How to Make a Pirate ship Primary Education.pptxmanuelaromero2013
 
microwave assisted reaction. General introduction
microwave assisted reaction. General introductionmicrowave assisted reaction. General introduction
microwave assisted reaction. General introductionMaksud Ahmed
 
Advanced Views - Calendar View in Odoo 17
Advanced Views - Calendar View in Odoo 17Advanced Views - Calendar View in Odoo 17
Advanced Views - Calendar View in Odoo 17Celine George
 
Student login on Anyboli platform.helpin
Student login on Anyboli platform.helpinStudent login on Anyboli platform.helpin
Student login on Anyboli platform.helpinRaunakKeshri1
 
Software Engineering Methodologies (overview)
Software Engineering Methodologies (overview)Software Engineering Methodologies (overview)
Software Engineering Methodologies (overview)eniolaolutunde
 
The Most Excellent Way | 1 Corinthians 13
The Most Excellent Way | 1 Corinthians 13The Most Excellent Way | 1 Corinthians 13
The Most Excellent Way | 1 Corinthians 13Steve Thomason
 
Grant Readiness 101 TechSoup and Remy Consulting
Grant Readiness 101 TechSoup and Remy ConsultingGrant Readiness 101 TechSoup and Remy Consulting
Grant Readiness 101 TechSoup and Remy ConsultingTechSoup
 
Nutritional Needs Presentation - HLTH 104
Nutritional Needs Presentation - HLTH 104Nutritional Needs Presentation - HLTH 104
Nutritional Needs Presentation - HLTH 104misteraugie
 
Call Girls in Dwarka Mor Delhi Contact Us 9654467111
Call Girls in Dwarka Mor Delhi Contact Us 9654467111Call Girls in Dwarka Mor Delhi Contact Us 9654467111
Call Girls in Dwarka Mor Delhi Contact Us 9654467111Sapana Sha
 
mini mental status format.docx
mini    mental       status     format.docxmini    mental       status     format.docx
mini mental status format.docxPoojaSen20
 

Recently uploaded (20)

Industrial Policy - 1948, 1956, 1973, 1977, 1980, 1991
Industrial Policy - 1948, 1956, 1973, 1977, 1980, 1991Industrial Policy - 1948, 1956, 1973, 1977, 1980, 1991
Industrial Policy - 1948, 1956, 1973, 1977, 1980, 1991
 
POINT- BIOCHEMISTRY SEM 2 ENZYMES UNIT 5.pptx
POINT- BIOCHEMISTRY SEM 2 ENZYMES UNIT 5.pptxPOINT- BIOCHEMISTRY SEM 2 ENZYMES UNIT 5.pptx
POINT- BIOCHEMISTRY SEM 2 ENZYMES UNIT 5.pptx
 
Mattingly "AI & Prompt Design: The Basics of Prompt Design"
Mattingly "AI & Prompt Design: The Basics of Prompt Design"Mattingly "AI & Prompt Design: The Basics of Prompt Design"
Mattingly "AI & Prompt Design: The Basics of Prompt Design"
 
Mastering the Unannounced Regulatory Inspection
Mastering the Unannounced Regulatory InspectionMastering the Unannounced Regulatory Inspection
Mastering the Unannounced Regulatory Inspection
 
Hybridoma Technology ( Production , Purification , and Application )
Hybridoma Technology  ( Production , Purification , and Application  ) Hybridoma Technology  ( Production , Purification , and Application  )
Hybridoma Technology ( Production , Purification , and Application )
 
Introduction to AI in Higher Education_draft.pptx
Introduction to AI in Higher Education_draft.pptxIntroduction to AI in Higher Education_draft.pptx
Introduction to AI in Higher Education_draft.pptx
 
Employee wellbeing at the workplace.pptx
Employee wellbeing at the workplace.pptxEmployee wellbeing at the workplace.pptx
Employee wellbeing at the workplace.pptx
 
The basics of sentences session 2pptx copy.pptx
The basics of sentences session 2pptx copy.pptxThe basics of sentences session 2pptx copy.pptx
The basics of sentences session 2pptx copy.pptx
 
How to Make a Pirate ship Primary Education.pptx
How to Make a Pirate ship Primary Education.pptxHow to Make a Pirate ship Primary Education.pptx
How to Make a Pirate ship Primary Education.pptx
 
microwave assisted reaction. General introduction
microwave assisted reaction. General introductionmicrowave assisted reaction. General introduction
microwave assisted reaction. General introduction
 
Advanced Views - Calendar View in Odoo 17
Advanced Views - Calendar View in Odoo 17Advanced Views - Calendar View in Odoo 17
Advanced Views - Calendar View in Odoo 17
 
Student login on Anyboli platform.helpin
Student login on Anyboli platform.helpinStudent login on Anyboli platform.helpin
Student login on Anyboli platform.helpin
 
Software Engineering Methodologies (overview)
Software Engineering Methodologies (overview)Software Engineering Methodologies (overview)
Software Engineering Methodologies (overview)
 
Código Creativo y Arte de Software | Unidad 1
Código Creativo y Arte de Software | Unidad 1Código Creativo y Arte de Software | Unidad 1
Código Creativo y Arte de Software | Unidad 1
 
The Most Excellent Way | 1 Corinthians 13
The Most Excellent Way | 1 Corinthians 13The Most Excellent Way | 1 Corinthians 13
The Most Excellent Way | 1 Corinthians 13
 
Grant Readiness 101 TechSoup and Remy Consulting
Grant Readiness 101 TechSoup and Remy ConsultingGrant Readiness 101 TechSoup and Remy Consulting
Grant Readiness 101 TechSoup and Remy Consulting
 
Nutritional Needs Presentation - HLTH 104
Nutritional Needs Presentation - HLTH 104Nutritional Needs Presentation - HLTH 104
Nutritional Needs Presentation - HLTH 104
 
INDIA QUIZ 2024 RLAC DELHI UNIVERSITY.pptx
INDIA QUIZ 2024 RLAC DELHI UNIVERSITY.pptxINDIA QUIZ 2024 RLAC DELHI UNIVERSITY.pptx
INDIA QUIZ 2024 RLAC DELHI UNIVERSITY.pptx
 
Call Girls in Dwarka Mor Delhi Contact Us 9654467111
Call Girls in Dwarka Mor Delhi Contact Us 9654467111Call Girls in Dwarka Mor Delhi Contact Us 9654467111
Call Girls in Dwarka Mor Delhi Contact Us 9654467111
 
mini mental status format.docx
mini    mental       status     format.docxmini    mental       status     format.docx
mini mental status format.docx
 

Library Application ASP.NET Web Project

  • 1. Library Application – ASP.NET Web Project Objective: Transform the Library Windows application into an ASP.NET web application. All functionalities that were included in the windows application must also made available in the web application. Additional functionality includes a login control that limits access to only those users that are part of the librarian role. Juvenile members who turn 18 must be converted to adult members. An entry screen for new items in the library must be added. Summary: This project demonstrates the use of combination of ASP.NET development with login control that’s new in ASP.NET 2.0 • User input validation, using the Required Field Validator, Compare Validator, Regular Expression Validator, and Range Validator. • Data binding to a data grid control and related manipulation. • Incorporate middle tier business tier for scalability. • Use of session object to maintain application state. • Incorporate both client and server side validation. • Regular expressions are used for input validation. The basic functions of the application are as follows: • Add new members to the library. A differentiation is made between adult and juvenile members. Adult members are 18 or older. • View member information such as address, phone number, membership expiration date, and books currently checked out. • Check out available books. • Check in books. • Add new books to the library. It was created as a multi-tier application with the following layers: • User interface – (WebApp) • Business tier – (LibraryBusiness and Entities) • Data Access layer – (DataAccess) • SQL Server DB – Location for all data The application’s Solution Explorer can be seen to the right. The user interface handles all data entry from the librarian. The data is validated by the business tier before proceeding to the database via the data access layer. All library data resides in a SQL Server database.
  • 2. Screen shots of the application in use The initial page of the application is the login page. Users are required to login using the login control. Only members of the librarian role have authorization to continue. Upon successful login the library home page is displayed which is a master page. The master page is used to provide consistent look and feel for the entire application. The librarian can retrieve member information, add members, or add items from here.
  • 3. Member information can be displayed for any member in the library based on their member ID. Name, address, phone number, expiration date, and a list of checked out items are diplayed. The call to the database passes through 2 additional layers on the server side before it retrieves member information from the database. First the business layer is called and then the data access layer is called from the business layer. The data access layer executes the appropriate stored procedure residing on the SQL Server database. If an unknown member ID is entered the user is prompted to enter a valid ID. The Required Field Validator ensures that the member ID textbox is not empty before a postback is processed to the server. The Compare Validator is used to ensure that an integer is entered in the member ID textbox before a postback is processed. Individual items can be checked back in by clicking the appropriate Check In button in the checked out items data grid. Highlighted rows in the data grid denote over due items.
  • 4. Items can be checked out from the member information page by clicking the Check Out Item button. The current member ID is saved as a session variable and the check out item page is displayed. Additional items for the current member can be checked out by typing in the ISBN, copy number, and clicking the Check Out Item button. Required Field Validators are used on both of the textboxes to ensure information is entered before postback processing happens at the server. Compare Validators are also used to ensure integers are entered. A successful check out is denoted by a red “Item Checked Out” label at the bottom of the page. If the item cannot be found the check out fails and an appropriate message is displayed. If the item is on loan to another member a message is displayed. Members can only have 4 items checked out at any given time. If an attempt is made to check out additional items the check out fails and a message is diplayed. The current member’s information can be displayed by clicking the Display Member Information button. The GetMemberInfo page is diplayed and populated using the member ID session variable. The session state duration is 20 minutes. If the Display Member Information button is clicked after the duration has elapsed the login page is displayed and the user must login again.
  • 5. New adults can be added to the library by clicking the Add Adult Member hyperlink. First name, last name, street address, city, state, and zip code are required fields. All of these textboxes have Required Field Validators. In addition, all textboxes on this page have Regular Expression Validators to ensure that each piece of information is entered in the proper format before a postback occurs. For example, the first name must have the first letter capitalized and the remaining letters lower case. It cannot be longer than 15 characters total. The regular expression used is ^[A-Z]{1}[a-zs]{0,14}$. Click the Add Adult button after all of the new member information is entered to add the new member. If the addition of the new member to the database was successful the GetMemberInfo page is displayed with the new member’s information. See below. Unsuccessful additions are denoted by a label at the bottom of the page.
  • 6. New juveniles can be added to the library by clicking the Add Juvenile Member hyperlink. First name, last name, adult member ID, and birthdate are required fields. All of these textboxes have Required Field Validators. In addition, all textboxes except for the birthdate textbox on this page have Regular Expression Validators to ensure that each piece of information is entered in the proper format before a postback occurs. The birthdate textbox utilizes a range validator to ensure the new applicant is between the ages of 0 to 18. Click the Add Juvenile button to add the new member. If the addition of the new member to the database was successful the GetMemberInfo page is displayed with the new member’s information. See below. Unsuccessful additions are denoted by a label at the bottom of the page.
  • 7. New items can be added to the library by clicking the Add Item hyperlink. ISBN, author, cover, title, whether the item is loanable or not, and the translation are all required fields. Validation is performed by validators on the client side to ensure proper formatting before a postback occurs. Click the Add Item button to add the new item to the database. If successful a label will be shown indicating what copy number is assigned to the item. Since a library may have multiple copies of the same book if matching ISBN numbers are found the next sequential copy number is assigned to the new addition. Using the screen shot above as an example, if the library already had a copy of Our Legacy by John Hannah the new copy number would be 2 instead of 1. Any errors in adding the new item will be displayed in a label denoting the reason for the failed addition.