chương trình: MVC-LINQ
I,Biết + Hiểu:
+LinQ có tên gọi là Language Integrated Query, một thư viện cung cấp cho ngôn ngữ lập trình C# và Visual Basic (trong bài này tôi chỉ hướng dẫn với C#). Thư viện này cung cấp khả năng truy vấn database ngay trên ngôn ngữ lập trình. Khi sử dụng, LinQ sẽ mô phỏng lại cơ sở dữ liệu của bạn và lưu trong trương trình, sau đó mỗi entity sẽ đươc xây dựng thành mỗi class như mô hình MVC, từ đó ta có thể truy xuất database thông qua những class đó.
+LinQ to SQL khá phù hợp với những dự án phần mềm như quản lý bán hàng, quản lý của hàng, nhân viên vì nó cung cấp khả năng tạo một database ngay trong SQL Server thông qua mô hình database mà LinQ to SQL được người lập trình cung cấp trong quá trình xây dựng sản phẩm. Việc đó ru ngắn đáng kể thời gian cho lập trình viên và cũng dễ dàng cho người sử dụng cài đặt.
+ các thành phần của LINQ:
- LINQ to Objects
“LINQ to Objects” ở đây có nghĩa là nói đến cách sử dụn LINQ đối với các đối tượng Collection mà đã được thực thi giao diện IEnumerable hoặc IEnumerable<T> tức những collection có thể “liệt kê” ra được. Đây là trường hợp sử dụng đơn giản nhất của LINQ khi làm việc với dữ liệu.
- LINQ to SQL
LINQ to SQL là một phiên bản hiện thực hóa của O/RM (object relational mapping) có bên trong .NET Framework 3.5, nó cho phép bạn mô hình hóa một cơ sở dữ liệu dùng các lớp .NET. Sau đó bạn có thể truy vấn cơ sở dữ liệu dùng LINQ, cũng như cập nhật/thêm/xóa dữ liệu từ đó.
LINQ to SQL hỗ trợ đầy đủ transaction, view và các stored procedure (SP). Nó cũng cung cấp một cách dễ dàng để thêm khả năng kiểm tra tính hợp lệ của dữ liệu và các quy tắc vào trong mô hình dữ liệu của bạn.
- LINQ to XML
Sử dụng LINQ với mục đích truy vấn file XML và tiện lợi truy vấn hơn nhiều so với việc dùng XmlDocument, Xpath và Xquery như trước kia.
- LINQ to Datasets
Giới thiệu sơ về DataSet
DataSet trong ADO.NET là một bước phát triển lớn trong việc phát triển ứng dụng cơ sở dữ liệu đa hệ. Khi lấy và chỉnh sửa dữ liệu, duy trì liên tục kết nối tới Data Source trong khi chờ user yêu cầu thì rõ ràng là tốn tài nguyên máy rất nhiều.
DataSet giúp ích ở đây rất lớn. Vì DataSet cho phép lưu trữ dữ liệu và chỉnh sửa tại ‘local cache’, hay gọi là offline mode. Có thể xem xét và xử lý thông tin trong khi ngắt kết nối. Sau khi chỉnh sửa và xem xong thì tạo một kết nối và update dữ liệu từ local vào Data Source.
Dữ liệu trong DataSet được lưu trữ dưới dạng một Collection các Tables và bạn cần phải xử lý thông qua các lớp DataTable (DataRow và DataColumn).
DataSet trong ADO.NET là một bước phát triển lớn trong việc phát triển ứng dụng cơ sở dữ liệu đa hệ. Khi lấy và chỉnh sửa dữ liệu, duy trì liên tục kết nối tới Data Source trong khi chờ user yêu cầu thì rõ ràng là tốn tài nguyên máy rất nhiều.
DataSet giúp ích ở đây rất lớn. Vì DataSet cho phép lưu trữ dữ liệu và chỉnh sửa tại ‘local cache’, hay gọi là offline mode. Có thể xem xét và xử lý thông tin trong khi ngắt kết nối. Sau khi chỉnh sửa và xem xong thì tạo một kết nối và update dữ liệu từ local vào Data Source.
Dữ liệu trong DataSet được lưu trữ dưới dạng một Collection các Tables và bạn cần phải xử lý thông qua các lớp DataTable (DataRow và DataColumn).
II, thực hành và phân tích:
+tạo project , chọn và đặt tên như hình sau :
+ chọn mô hình MVC + Ok :
+ tạo class trong Model nhu hình dưới :
+ đặt tên class mới tạo là Product:
+thêm các trường sau vào class Product vừa tạo :
+ thêm vào class mới tạo như hình dưới :
+ chỉnh sửa trong web.config như sau :
+ chuột pgair controller + Add + Controller+ điền name:ProductController + ok
+ thêm các dòng code như sau vào class ProductController:
+ chọn chuột phải vào các hàm có method get cần dùng + add view .
+ thêm các hàm cho ProductController như sau :
- thêm đoạn sau vào các view của Product :
- thêm đoạn sau :( hàm còn lại tương tự + add View + thêm các @html.Actionlink như trên vào view):
+ chạy và thử nghiệm ứng dụng của bạn .
III, Tổng Kết :
+ Như vậy chúng ta rút ra điểm mạnh của LINQ là “viết truy vấn cho rất nhiều các đối tượng dữ liệu”. Từ cơ sở dữ liệu, XML, Data Object … thậm chí là viết truy vấn cho một biến mảng đã tạo ra trước đó. Vì thế ta có các khái niệm như là LinQ to SQL, LinQ to XML,….
Khi tạo một đối tượng LINQ thì Visual Studio sẽ tự động sinh ra các lớp có các thành phần tương ứng với CSDL của chúng ta. Khi muốn truy vấn, làm việc với CSDL ta chỉ việc gọi và truy xuất các hàm, thủ tục tương ứng của LINQ mà không cần quan tâm đến các câu lệnh SQL thông thường.
Tóm lại LINQ ra đời để giảm công sức cho những quá trình đơn giản và “chung chung” trước đây
IV,Đánh giá:
+nếu so sánh với SQL, LINQ đơn giản hơn, gọn hơn và mã nguồn ở cấp độ cao hơn. LINQ đôi khi xem xét để so sánh với C#, C++. SQL là ngôn ngữ truy vấn lâu đời, được phát minh vào năm 1974. Từ đó, SQL được mở rộng dường như vô tận, nhưng lại không được tái cấu trúc lại. Điều đó là cho SQL đôi khi hơi lộn xộn, tương tự như VB6 và Visual FoxPro
+tính khả thi và liên kết cao .
bài demo:https://github.com/trinhthithao/Sem3Mycrosoft/tree/master/ASP/LINQwithASP.NETMVC5
Cảm Ơn Bạn Đã Quan Tâm Đến Bài Viết Này ^.^ .
Không có nhận xét nào:
Đăng nhận xét