Chúng em xin chân thành cảm ơn!... Các thành phần LinqC.Các Toán Tử Trong Linq Operator Type Operator Name Aggregation Aggregate, Average, Count, LongCount, Max, Min,Sum Convers
Trang 1TRƯỜNG ĐẠI HỌC CÔNG NGHIỆP VIỆT -HUNG
KHOA CÔNG NGHỆ THÔNG TIN
ĐỀ TÀI: Xây Dựng Phần Mềm Quản Lý Tài Khoản
Sử Dụng Linq,C# Ứng Dụng Mô Hình 3 Lớp
Giảng viên hướng dẫn : Ths.Nguyễn Thị Thu Thủy Sinh viên thực hiện : 1.Kiều Văn Hưng
2.Nguyễn Mạnh Tiến 3.Nguyễn Thị Sáu Lớp : 37ĐHCNTT A1
Trang 2LỜI CẢM ƠN
Trong thời gian nghiên cứu và học tập môn Cơ Sở Dữ Liệu(My SQL),Môn Lập Trình Hướng Đối Tượng(Với ngôn ngữ lập trình C#) cùng với việc tìm hiểu và đọc các tài liệu trên thư viện Trường Đại Học Công Nghiệp Việt – Hung và việc tìm hiểu thêm tàiliệu học tập trên internet chúng em đã gặp không ít khó khăn về việc xây dựng và thiết kế
phần mềm Quản Lý Tài Khoản sử dụng ngôn ngữ linq,C# ứng dụng mô hình 3 lớp.Tuy Nhiên với sự giúp đỡ quý báu của các thầy cô giáo và các bạn nhóm chúng em đã hoàn thành ứng dụng và bài báo cáo Đồ án học phần I Xây Dựng Phần Mềm Quản Lý Tài Khoản Sử Dụng Linq,C# Ứng Dụng Mô Hình 3 Lớp.
Đồng thời chúng em xin gửi lời cảm ơn đặc biệt về sự hướng dẫn và chỉ bảo nhiệt
tình của cô giáo Ths.Nguyễn Thị Thu Thủy đã tận tình giúp đỡ chúng em trong suất quá
trình hoàn thành chương trình cũng như bài báo cáo này
Cùng với sự góp ý, hỗ trợ nhiệt tình của các bạn trong lớp 37ĐHCNTT A1 Tuy
nhiên, do thời gian có hạn cũng như kinh nghiệm còn thiếu nên trong ứng dụng cũng như bài báo cáo này sẽ không tránh khỏi những thiếu sót, hạn chế nhất định Những ý kiến nhận xét và góp ý quý báu của thầy cô và các bạn là cơ sở để chúng em học hỏi thêm và hoàn thiện thêm kiến thức và củng cố thêm kinh nghiệm của bản thân mình Chúng em rất mong nhận được sự nhận xét và góp ý từ thầy cô và các bạn
Chúng em xin chân thành cảm ơn!
Trang 3LỜI NÓI ĐẦU
Ngày nay cùng với sự phát triển mọi mặt của xã hội, ngành công nghệ thông tin đãtrở thành một nhu cầu không thể thiếu đối với đời sống con người Nền tảng khoa học máy tính ngày nay đang giữ một vị trí trung tâm trong hầu hết các lĩnh vực của xã hội Với những lợi ích do công nghệ thông tin mang lại, các nhà quản lý đã kịp thời đưa ứng dụng tin học vào các tiện ích quản lý nhằm phục vụ cho công việc nhanh chóng, chính xác và dễ lưu trữ Việc xây dựng một ứng dụng quản lý đối với các lập trình viên cũng là một vấn đề đáng lưu tâm bởi vì có rất nhiều ngôn ngữ lập trình và phương pháp lập trình khác nhau nên việc lựa chọn một ngôn ngữ lập trình, một phương pháp lập trình cũng rất là khó khăn Do vậy chúng em làm đề tài này giúp giới thiệu cho mọi người về ứng dụng phương pháp lập trình hướng đối tượng, ngôn ngữ lập trình C#, ngôn ngữ truy vấn Linq ứng dụng mô hình 3 lớp để xây dựng một ứng dụng demo giúp mọi người có thể hiểu được tác dụng và lợi ích mang lại
Bài toán “Xây Dựng Phần Mềm Quản Lý Tài Khoản Sử Dụng Linq,C# Ứng Dụng Mô Hình 3 Lớp” nhằm giải quyết đáp ứng một các hiệu quả về công tác quản lý
những tài khoản đăng ký trong hệ thống cơ sở dữ liệu Tin học hóa trong công tác quản lýnhằm giảm bớt sức lao động của con người, tiết kiệm được thời gian, độ chính xác cao, gọn nhẹ và tiện lợi hơn rất nhiều so với việc làm thủ công quản lý trên giấy tờ như trước đây Tin học hóa giúp thu hẹp không gian lưu trữ, tránh được tình trạng thất lạc dữ liệu, tự động hệ thống hóa và cụ thể hóa các thông tin theo nhu cầu của con người Với sự pháttriển nhanh chóng của công nghệ, với nhiều sự lựa chọn phát triển một ứng dụng nên các kỹ sư lập trình cũng băn khoăn việc lựa chọn các nền tảng, ngôn ngữ và phương pháp lập
Trang 4trình để phát triển một ứng dụng Việc sử dụng Ngôn ngữ lập trình C# với phương pháp lập trình hướng đối tượng kết hợp ngôn ngữ truy vấn Linq và mô hình 3 lớp thông qua
demo Phần Mềm Quản Lý Tài Khoản giúp cho các bạn học ngành công nghệ thông tin,
kỹ sư lập trình có thể hiểu được lợi ích từ đó
Là một đề tài mang tính thực tiễn cao và ứng dụng được nhiều trong lĩnh vực quảnlý chung và giúp cho các bạn sinh viên học ngành công nghệ thông tin nói chung và ngành công nghệ phần mềm nói riêng có thể hiểu được lợi từ phương pháp lập trình hướng đối tượng, ngôn ngữ lập trình C#, ngôn ngữ truy vấn Linq và việc áp dụng mô
hình 3 lớp thông qua phần mềm demo Quản Lý Tài Khoản Vì vậy, chúng em đã lựa chọn đề tài “Xây Dựng Phần Mềm Quản Lý Tài Khoản Sử Dụng Linq,C# Ứng Dụng
Mô Hình 3 Lớp” Đề tài này sẽ phần nào đưa ra được những nhận xét, những đánh giá
tổng thể và từ đó đưa ra được hệ thống với các chức năng đăng nhập, thêm, sửa, xóa,
lưu… dựa trên sự hỗ trợ của máy tính Hệ thống “Phần Mềm Quản Lý Tài Khoản Sử Dụng Linq,C# Ứng Dụng Mô Hình 3 Lớp” được xây dựng trên phần mềm Microsoft Visual studio 2012 sử dụng WindownForm, ngôn ngữ lập trình C#, ngôn ngữ truy vấn Linq Ứng dụng mô hình 3 lớp 3 Layer và kết hợp với Hệ quản trị cơ sở dữ liệu
Microsoft SQL 2005
Với sự hướng dẫn nhiệt tình của cô giáo Ths Nguyễn Thị Thu Thủy đã giúp
chúng em hoàn thành chương trình này Tuy nhiên với những hạn chế về kiến thức và thời gian nên không thể tránh khỏi những sai xót, chúng em rất mong nhận được những
Trang 5nhận xét góp ý chỉ bảo của thầy cô và các bạn để chương trình của chúng em được hoàn thiện Chúng em xin chân thành cảm ơn.!
Trang 6CHƯƠNG 1 PHÂN TÍCH YÊU CẦU1.1 Tính cấp thiết của đề tài
Cùng với sự phát triển mạnh mẽ của công nghệ thông tin và cùng với sự xâm nhậpnhanh chóng của tin học vào mọi lĩnh vực của đời sống xã hội thì việc sử dụng máy tính trong công tác quản lý đã trở thành một nhu cầu cấp bách, nó là một trong những yếu tố không thể thiếu nhằm nâng cao chất lượng và hiệu quả trong công tác quản lý
Trong lĩnh vực quản lý hệ thống tài khoản cũng là nhu cầu rất cần thiết trong mọi lĩnh vực như : Quản lý thành viên trong câu lạc bộ, Quản lý độc giả trong thư viện, Quản lý nhân viên, Quản lý thành viên trong diễn đàn… Việc điều chỉnh và bổ xung thông tin thực hiện rất khó khăn và không rõ ràng gặp nhiều rủi ro Do đó việc Tin học hóa các hoạt động trong lĩnh vực quản lý ngày càng trở nên cần thiết Việc ứng dụng tin học trongcông tác quản lý giúp cho con người thoát khỏi lao động thủ công, nâng cao hiệu quả của công việc, tiết kiệm được rất nhiều thời gian và công sức
Trong lĩnh vực thiết kế và xây dựng ứng dụng phần mềm thì việc lựa chọn ngôn ngữ lập trình và sử dụng phương pháp phù hợp với chương trình đó cũng đáng là phải chú ý đến Do đó, chúng em lựa chọn ngôn ngữ lập trình C#, ngôn ngữ truy vấn Linq và
mô hình 3 lớp để giới thiệu với mọi người trong ngành công nghệ thông tin nói chung , ngành lập trình nói riêng để mọi người có thể có một cái nhìn tổng quan để tham khảo hoặc ứng dụng cho công việc sau này
1.2 Mục đích và yêu cầu của đề tài
Phần Mềm Quản Lý Tài Khoản Sử Dụng Linq,C# Ứng Dụng Mô Hình 3 Lớp
được xây dựng lên với mục đích trình bày và khái quát chung về các hoạt động của công
Trang 7tác quản lý nói chung nhằm giúp mọi người có thể hiểu được việc ứng dụng của tin học trong công tác quản lý Đồng thời nó xây dựng lên với mục đích giới thiệu cho các bạn trẻ học ngành công nghệ thông tin hiểu được việc áp dụng kiến thức lập trình hướng đối tượng, ngôn ngữ lập trình C#, ngôn ngữ truy vấn Linq và mô hình 3 lớp trong việc xây dựng một ứng dụng quản lý rất dễ dàng, thuận tiện, tiết kiệm thời gian và dễ dàng quản lý.
Xây dựng Phần Mềm Quản Lý Tài Khoản Sử Dụng Linq,C# Ứng Dụng Mô Hình 3 Lớp nhằm giúp cho mọi người hiểu được tầm quan trọng, lợi ích của của ứng
dụng tin học trong công tác quản lý Giúp mọi người có thể hiểu được lợi ích và tác dụng của việc ứng dụng kiến thức lập trình hướng đối tượng, ngôn ngữ C#, ngôn ngữ truy vấn Linq và mô hình 3 lớp 3 layer Bài toán đặt ra là xây dựng ứng dụng quản lý để công việccó hiệu quả, chính xác, tiết kiệm được thời gian và công sức cho người lập trình
1.3 Khảo sát hệ thống thực tế
1.3.1 Hệ thống phần mềm xây dựng
Việc sử dụng ngôn ngữ lập trình C#, ngôn ngữ truy vấn Linq và kết hợp mô hình 3lớp thì hỗ trợ với Microsoft Visual Studio 2008 và Microsoft SQL server 2005 trở lên Ở đây chúng em sử dụng Microsoft Visual Studio 2012 và Microsoft SQL server 2005 để xây dựng ứng dụng demo
1.3.1 Hệ thống đăng nhập tài khoản
Trang 8Với mỗi tiện ích quản lý việc cần làm đầu tiên là phải xây dựng 1 hệ thống đăng nhập giúp cho người dùng dễ dàng quản lý, bảo mật thông tin trong cơ sở dữ liệu.
Về cơ bản thì hệ thống sẽ đăng nhập bằng Tài Khoản và Mật Khẩu của các thành viên trong cơ sở dữ liệu Qua đây các bạn thuộc ngành công nghệ thông tin có thể hiểu được về sử dụng ngôn ngữ lập trình C# phần mềm Visual Studio giúp xây dựng giao diện và xây dựng các chức năng cho các thao tác cần thiết trên giao diện , cú pháp truy vấn Linq
so sánh với cơ sở dữ liệu để cho phép người dùng có thể đăng nhập được tài khoản có trong cơ sở dữ liệu và giúp hiểu được tác dụng của mô hình 3 lớp trong giao diện này
1.3.2 Hệ Thống Quản Lý Tài Khoản
Sau khi thành viên đăng nhập Tài Khoản và Mật Khẩu thì hệ thống sẽ chuyển tới giao diện quản lý tài khoản người dùng có thể xem được hệ thống các thông tin được biểudiễn trên giao diện này, ở đây ta có : Tài Khoản, Tên,Giới Tính, Điện Thoại,Email của các thành viên
Các thành viên có thể thêm mới, Lưu, sửa,xóa các thông tin trong cơ sở dữ liệu được cho phép nhưng thông tin của thành viên admin sẽ không thể ai có thể thay đổi được vì cần phải có một tài khoản quản lý cố định tránh cho việc xóa hết tài khoản và không có tài khoản để đăng nhập
Qua đây các bạn thuộc ngành công nghệ thông tin có thể hiểu được về sử dụng ngôn ngữ lập trình C# phần mềm Visual Studio giúp xây dựng giao diện và xây dựng các chức năng cho các thao tác cần thiết trên giao diện, phân quyền, hợp lý hóa các dữ liệu,
Trang 9cú pháp truy vấn Linq so sánh với cơ sở dữ liệu để cho phép người dùng có thể thêm mới,sửa, xóa, lưu được tài khoản có trong cơ sở dữ liệu và cũng giúp hiểu được tác dụng của
mô hình 3 lớp trong giao diện này
1.3.3 Các chức năng của hệ thống
Hệ thống gồm các chức năng đăng nhập tài khoản ( đăng nhập tài khoản đã có trong cơ sở dữ liệu từ giao diện đăng nhập của phần mềm,), thêm mới( thêm tài khoản và thông tin cá nhân từ giao diện quản lý tài khoản của phần mềm vào cơ sở dữ liệu ), sửa (sửa tài khoản và thông tin cá nhân từ giao diện quản lý tài khoản của phần mềm vào cơ sở dữ liệu), xóa( xóatài khoản và thông tin cá nhân từ giao diện quản lý tài khoản của phần mềm vào cơ sở dữ liệu ), Report (xuất danh sách các thông tin của các tài khoản từ
cơ sở dữ liệu ra định dạng văn bản để in hoặc lấy dữ liệu)
CHƯƠNG 2 TÌM HIỂU LINQ, MÔ HÌNH 3 LỚP VÀ THIẾT KẾ PHẦN MỀM QUẢN LÝ TÀI KHOẢN ỨNG DỤNG LINQ, MÔ HÌNH 3 LỚP TRÊN VISUAL STUDIO.2.1 Tìm Hiểu Linq
2.1.1 Giới Thiệu về Linq
A Linq là gì?
* Khái niệm Linq
Trang 10 Linq ( Language Intergrated Query ) tạm dịch là ngôn ngữ tích hợp truy vấn, Linq là một thành phần của C#.
Linq không phải là một thư viện
Linq chỉ có ở C# NET Framework 3.0 trở lên ( vusual studio 2008 trở lên )
Linq thao tác đến những kiểu dữ liệu dạng danh sách
*Lý do sử dụng Linq
Truy vấn cho rất nhiều các đối tượng dữ liệu( XML, Data Oject, …)
Thao tác nhanh trên những dữ liệu dạng danh sách ( List, Arraylist …)
Đồng nhất việc truy xuất từ một nguồn dữ liệu bất kỳ
Mở rộng ra các ngôn ngữ khác ( không phải NET)
Trang 11B Các thành phần Linq
C.Các Toán Tử Trong Linq
Operator Type Operator Name
Aggregation Aggregate, Average, Count, LongCount, Max, Min,Sum
Conversion Cast, OfType, ToArray, ToDictionary, ToList, ToLookup,Tosequence
Element DefaultIfEmpty, ElementAt, ElementAtOrDefault, First,
FirstorDefault, Last, LastorDefault, Single, SingleOrDefault
C#
.NET Language Intergrated Query ( LINQ )
LINQ Enabled Data Sources
LINQ toDatasets LINQ toSQL LINQ toDatasets
Trang 12Joining GroupJoin, Join
Ordering OrderBy, ThenBy, OrderByDescending, ThenByDescending, ReversePartitioning Skip, SkipWhile, Take, TakeWhile
Quantifiers All, Any, Contains
Selection Select, SelectMany
Set Concat, Distinct, Except, Intersect, Union
2.1.2 Tìm hiểu về truy vấn trong Linq
A Cách hoạt động của Linq
From ( biến ) in ( nguồn dữ liệu )
{
Where( biến ).( phần tử )( toán tử )(giá trị lọc)
|orderby, group … by… |}
Select ( bien )|( bien ).( phần tử )
| Cout, Max, Min …Trong cấu trúc hoạt động Linq ta có thể chia thành 3 phần
Foreach ( var item in Query)
B.Các toán tử truy vấn của Linq
Item 3
Item 2
Item 1
Item n
Trang 132.1.3 Linq, Các chủng loại Linq và các loại quan hệ trong câu truy vấn Linq
a Các chủng loại Linq( Generic Types)
* Implicitly typed local variables
Cho phép khai báo biến cục bộ không có kiểu xác định
*Object & collection initializers
Khởi tạo giá trị một hoặc nhiều trường bằng một câu lệnh
*Anonymous types
Được dùng để nhóm dữ liệu thành một đối tượng thông qua từ khóa new
*Lambda expression
b Các loại quan hệ trong câu truy vấn
*Truy vấn không chuyển đổi nguồn kiểu dữ liệu
Trang 14*Truy vấn chuyển đổi nguồn kiểu dữ liệu
2.1.4 Truy vấn Query và truy vấn Method
- So sánh truy vấn Query và truy vấn method
Trang 15+ Truy vấn Query:
From (biến)in(nguồn dữ liệu)
{where(biến).(phần tử)(toán tử)(giá trị lọc)
|orderby,group…by….|}
Select (biến)|(bien).(phantu)
+ Truy vấn Method:
(nguồn dữ liệu).where(biểu thức lambda).Count,Min,Max,Orderby, (biệt thức lambda)
CHƯƠNG 3TÌM HIỂU MÔ HÌNH 3 LAYER VÀ LINQ TO SQL
3.1 Tìm hiểu mô hình 3 layer và linq to SQL
3.1.1 Tìm hiểu mô hình 3 layer
a.Khái niệm:
- Lớp(class) ≠ lớp(layer)
- Gồm 3 thành phần: Presentation, Business, Logic và Data Access
- Mỗi lớp đảm nhận những vai trò khác nhau
b.Lý do sử dụng mô hình 3 layer:
- Tránh tình trạng dồn chung một file
- Chia thành từng lớp nhỏ dễ quản lý
- Kiểm tra lỗi và khắc phục nhanh chòng
- Có thể chia thành nhiều layer hơn thông qua mô hình 3 layer
3.1.2 Linq to SQL
DataSource
Data Access LayerBusiness LayerPresentation Layer