I - INTRODUCTION - ADO.NET Entity Framework là một nền tảng được sử dụng để làm việc với database thông qua cơ chế ánh xạ Object/Relational Mapping (ORM). Nhờ đó, bạn có thể truy vấn, thao tác với database gián tiếp thông qua các đối tượng lập trình. ( Chúng ta sẽ không đi tìm hiểu sâu kiến trúc cũng như các phần khác của ADO.NET EF mà chỉ tìm hiểu cách thức ứng dụng thực tế)
Hình 1: Kiến Trúc Entity Framework
+ Một ứng dụng EF có thể sử dụng một trong 3 cách tiếp cận sau: Database First Model First Code First. - Phần Model được khởi tạo trong tập tin *.edmx - Phần Code tương ứng với code behind trong tập tin *.cs (or .vb if use VB.NET) - Database là cơ sở dữ liệu được khởi tạo (SQL server, Access . . . .)
Hình 2: Ba mô hình trong EF
1. Database First - Phiên bản này được hỗ trợ trong VS 2008 - EF sẽ tự tạo ra data model và các class object layer cho bạn từ database có sẵn thông qua tool Entity Data Model Wizard. - Bạn có thể thay đổi Model và cập nhật lại database. -Sử dụng Database First là cách đơn giản nhất trong 3 cách trên. 2. Model First - Được hỗ trợ từ phiên bản VS 2010 - Bạn sẽ tạo một Data Model rỗng bằng tool Entity Data Model Designer. - Các class object layer sẽ tự động sinh ra. Sau khi thiết kế xong, sử dụng chức năng Generate Database from Mode để tạo ra các mã DDL (data definition language) dựa trên mã SSDL (Store Schema Definition Language). - Các mã DDL này sẽ được thực thi và lưu thành tập tin .sql. 3. Code First - Từ phiên bản EF 4.0 và bạn phải cài đặt thêm thư viện EF Feature CTP để sử dụng. Tuy nhiên, phiên bản EF 4.1 đã đính kèm chức năng này và bạn cần phải cài đặt thủ công để sử dụng với VS 2010 - Phương pháp này bỏ qua phần Model (*.edmx), bạn có thể thiết kế các class tương ứng với các table của Database. - Code First đều được thực hiện thủ công nhưng nó linh hoạt và bạn có thể kiểm soát các nội dung đã tạo ra. Phương pháp này được dùng rất phổ biến. Phần II - Sử Dụng Entity Framework A. Database First
1. Điều kiện - Bạn sẽ cần có VS 2010 or VS 2012 được cài đặt để hoàn thành các bước - Nếu bạn đang sử dụng VS 2010, bạn cần cài đặt Nuget
2. Tạo CSDL - Các loại CSDL được cài đặt kèm với VS là khác nhau - Nếu bạn đang sử dụng VS 2010, bạn sẽ tạo ra CSDL SQL Express - Nếu bạn đang sử dụng VS 2012 bạn sẽ tạo ra một LocalDB - Mở VS Studio lên - Trên Tab View -> Server Explorer - Nhấp chuột phải Add Connection . . . - Nếu bạn chưa kết nối với một cơ sở dữ liệu từ Server Explorer trước đó bạn sẽ cần phải chọn Microsoft SQL Server là nguồn dữ liệu - Nhấn Continue …
Hình 3: Chọn nguồn dữ liệu
- Tiếp theo kết nối với LocalDb hoặc SQLEXPRESS hoặc tên server máy của bạn, tùy vào bạn cài đặt trước đó. - Tại mục Select or enter a database name: Nhập tên CSDL mà bạn muốn khởi tạo
Hình 4: Add Connection
- Nhấn Yes để tạo CSDL mới
Hình 5
- Cơ sở dữ liệu mới sẽ xuất hiện trong Server Explorer, nhấp chuột phải vào nó và chọn New Query - Copy dán Query sau:
- Nhấn Execute để tạo 2 table Blogs và Posts
3. Tạo Ứng Dụng Đơn Giản
- Chúng ta sẽ tạo ứng dụng nhỏ sử dụng CSDL trên - File -> New -> Project … - Lựa chọn ngôn ngữ, tại tab Windows chọn Console Application - Nhập tên project -> nhấn OK
Hình 6: Tạo mới Project
4. Sử dụng ADO.NET EF
- Project -> Add New Item ... - Chọn Data từ menu trái sau đó chọn ADO.NET Entity Data Model - Nhập tên Model sa đó OK.
Hình 7: Chuột phải chọn Add -> New Item
Hình 8: Add ADO.NET EF
- Sau khi nhấn Ok chương trình sẽ hiện tool Entity Data Model Wizard - Chọn Generate from database và nhấn Next
Hình 9: Entity Data Model Wizard
- Chọn CSDL mà bạn đã tạo ra trước đó, nhập tên và nhấn Next
Hình 10
- Chọn tables như hình sau và nhấn Finish
Hình 11
- Quá trình đảo ngược được hoàn thành với mô hình DATABASE FIRST được thêm vào project của bạn. - Một tập tin app.config được thêm vào mô tả chi tiết kết nối CSDL, bạn có thể chỉnh sửa để kết nối CSDL nếu trục trặc
* Một số bổ sung cho VS 2010 (Nếu bạn dùng VS 2010 có thể bạn cần cập nhật một số thao tác sau)
Nếu bạn đang sử dụng VS 2010, bạn cần thông qua một số bước để nâng cấp lên phiên bản Entity Framework mới nhất như sau: (Bạn cần cài đặt Nuget trước) - Đầu tiên, chúng ta sẽ vào Nuget để cài đặt phiên bản mới nhất - Chuột phải Project -> Manage Nuget Packages - Chọn Online Tab - Chọn EntityFrameWork packge - Chọn Install
Hình 12: Cài đặt Entity Framework
- Tiếp theo, chúng ta cần thêm API DbContext được giới thiệu trong các phiên bản sau này của EF. - Nhấp chuột phải vào chỗ trống trong mô hình thiết kế của bạn và chọn: Add Code Generation Item…
Hình 13: Add Code Generation Item
- Tiếp theo chọn Online Templates và nhập ô tìm kiếm DbContext - Chọn EF 5.x DbContext Generator for C# và điền tên nhấn Add
(Ảnh chụp từ VS 2010 – Nguồn MSDN)
5. Đọc Ghi Dữ Liệu - Ta đã có đầy đủ môi trường làm việc, bây giờ test nhé: Trong Files Program.cs thực hiện code sau:
-Nhấn RUN để xem kết quả -Đấy chỉ là demo console, bạn có thể chuyển qua winform . .. 6. Các Thay Đổi CSDL Gốc
- Test CSDL thành công, bây giờ chúng ta đi chỉnh sửa lại CSDL vì nhu cầu cần thêm hoặc bớt một số table chẳng hạn…. - Tại Server Explorer kích chuột phải vào CSDL của chúng ta chọn New Query - Nhập đoạn Query sau và nhấn Execute.
CREATETABLE [dbo].[Users]
(
[Username] NVARCHAR(50)NOTNULLPRIMARYKEY,
[DisplayName] NVARCHAR(MAX)NULL
)
- Kích chuột phải vào giản đồ chọn Update
- Chọn Tables nhấn Finish
- Như vậy đã cập nhật thêm được tables mới.
Done
B. Model First - Chúng ta sẽ sử dụng model trống sau đó generate ra CSDL - Một số bổ sung cho VS 2010 bạn xem phần A. Database First - Lựa chọn chất lượng cao nhất cảu video để xem rõ hơn. (Không lời)
C. Code First Đang Cập Nhật . . . Phần III - THỰC HÀNH Đang Cập Nhật . . .
No comments:
Post a Comment
Commets Download Photoshop Actions, Lightroom Presets, PSD Template, Mockups, Stocks, Vectors, Fonts. Download free