Library Management System free asp.net project with source codes
This web application is used to handle typical operations in a library system.
This application is developed for librarians. Issuing book, returning book, adding member,
and searching for books are some of the major operations of this application.
Technologies and Products used
- ASP.NET 2.0
- C# language
- Visual Web Developer 2005 Express Edition
- SQL Server 2005 Express Edition
File Structure
The following is the directory structure of this application.
exam
|- App_Data
| |-Database.mdf
|- App_Code
| |-Database.cs
|- App_Themes
| |-style.css
|- all
| |-LibraryService.asmx
|- photos (this directory contains .jpg files of members)
|- default.aspx
|- login.aspx
|- addtitle.aspx
|- addmember.aspx
|- Masterpage.master
|- memberinfo.aspx
|- members.aspx
|- changepassword.aspx
|- deletemember.aspx
|- issue.aspx
|- returnbook.aspx
|- memberslist.aspx
|- searchbooks.aspx
|- web.config
|- web.sitemap
|- updatemembers.aspx
|- logout.aspx
Operations and related files
The following table lists operations and associated objects and files.
Operation
| Files
|
Login
| login.aspx
|
Logout
| logout.aspx
|
Delete Member
| deletemember.aspx
|
Master page of all
| Masterpage.master
|
Home Page
| Default.aspx
|
Change password
| changepassword.aspx
|
Add Title
| addtitle.aspx
|
Add Member
| addmember.aspx
|
Iseue of book
| issue.aspx
|
Return of book
| returnbook.aspx
|
Search books
| searchbooks.aspx
|
Update Members
| updatemembers.aspx
|
Member Information
| memberinfo.aspx
|
List of books
| books.aspx
|
Structure of Tables
USERS Table
uname - varchar(10)
pwd - varchar(10)
fullname - varchar(30)
SUBJECTS Table
subcode - varchar(10)
subname - varchar(30)
di - datetime
MEMBERS Table
mid - int
mname - varchar(30)
depositamt - int
djoin - datetime
email - varchar(40)
occupation - varchar(50)
TITLES Table
tid - int
title - varchar(30)
subcode - varchar(10)
authors - varchar(50)
price - int
dp - datetime
publishers - varchar(30)
status - char(1)
ISSUES Table
tid - int
mid - int
di - datetime
issuedby - varchar(10)
RETURNS Table
tid - int
mid - int
di - datetime
dr - datetime
issuedby - varchar(10)
returnedto - varchar(10)
fineamt - int
Steps to download, deploy and run this project
The following are the steps to related to be taken to run the existing part of the application :
- Download lm.zip and unzip it into any directory in your system. (For example if you extract to d:\ then it will create a
directory lm in d:\.
- Open Visual Web Developer 2005 Express Edition.
- Open the project from the directory into which you extracted project.For example, d:\lm
- Add SQL Database file to your project and create necessary tables as shown above.
- Create issuebook and returnbook procedures as shown below.
ALTER PROCEDURE IssueBook
(
@tid int,
@mid int,
@di datetime,
@issuedby varchar(10)
)
AS
declare @nbooks int
/* check titles availablity */
if not exists( select * from titles where tid = @tid and status = 'a')
begin
raiserror('Title is not present or not available',15,1)
return
end
/* check members availablity */
if not exists (select * from members where mid = @mid )
begin
raiserror('Invalid member id!',15,1)
return
end
ALTER PROCEDURE ReturnBook
(
@tid int,
@dr datetime,
@user varchar(10)
)
AS
declare @fine int
declare @mid int
declare @issuedby varchar(10)
declare @di datetime
/* check tid is valid */
if not exists (select * from issues where tid = @tid)
begin
raiserror('Title is not in the issued titles!',15,1)
return
end
/* calculate fine */
select @fine=case
when datediff(dd,di,getdate()) > 15 then datediff(dd,di,getdate())-15
else 0
end
from issues where tid = @tid;
select @mid = mid, @di = di, @issuedby=issuedby
from issues where tid = @tid;
/* insert a row into returns */
begin tran
insert into returns
values(@tid,@mid,@di,@dr,@issuedby,@user,@fine);
delete from issues where tid = @tid;
update titles set status ='a'
where tid = @tid
commit tran
- Goto Solution Explorer and make default.aspx the startup page.
- Run project from VWD 2005 Express Edition.
- You should see login.aspx page.