Bài giảng Xây dựng và triển khai Web Service cho ứng dụng di động: Bài 3 - Trần Duy Thanh
lượt xem 13
download
Bài 3 tiếp tục giới thiệu đến người học về các công nghệ dùng để xây dựng web service cho ứng dụng di động. Sau khi học xong bài này người học có thể biết kiến trúc của Entity Framework, biết cài đặt Entity Framework, biết thực hiện truy vấn dữ liệu trên Entity Framework. Mời các bạn cùng tham khảo.
Bình luận(0) Đăng nhập để gửi bình luận!
Nội dung Text: Bài giảng Xây dựng và triển khai Web Service cho ứng dụng di động: Bài 3 - Trần Duy Thanh
- Trường ĐH Khoa Học Tự Nhiên Tp. Hồ Chí Minh TRUNG TÂM TIN HỌC Bài 3: Các công nghệ dùng để xây dựng Web Service cho ứng dụng di động – Phần 2 Ngành Mạng & Thiết bị di động www.t3h.vn 2015
- Nội dung 1. Giới thiệu ObjectRelational Mapping (ORM) 2. Entity Framework (EF) Xây dựng và triển khai Web Service cho ứng dụng di động 2
- 1. Giới thiệu ObjectRelational Mapping (ORM) • ObjectRelational Mapping (ORM) là kỹ thuât ̣ ánh xa ̣ từ mô hình đối tượng xuống CSDL quan hê.̣ • Cho phép thao tác trên bang ̉ (Table) trong CSDL mà không cần quan tâm nhiều đến viêc viê ̣ ́t câu truy vấn cho mỗi lần truy xuất CSDL. Xây dựng và triển khai Web Service cho ứng dụng di động 3
- 1. Giới thiệu ObjectRelational Mapping (ORM) • Ưu điêm ̉ • Đôc lâp v ̣ ̣ ới Hê quan tri C ̣ ̉ ̣ ơ sở dữ liêu. ̣ • Cung cấp các API đơn gian ̉ dễ dùng, viết mã nhanh, ban ̉ thiết kế gần gũi với lâp tri ̣ ̀nh viên → tiết kiệm thời gian lập trình. • Khuyế t điêm ̉ • Các ORM thường tự sinh ra các câu lênh ̣ SQL → Khó can thiệp sâu để tối ưu hóa → Ảnh hưởng đến hiệu suất. • Cấu trúc bên dưới sẽ phức tap nê ̣ ́u lam dung viêc kê ̣ ̣ ̣ ́ thừa quá nhiều. • Khó khăn trong viêc quan ly ̣ ̉ ́ session. Xây dựng và triển khai Web Service cho ứng dụng di động 4
- Nội dung 1. Giới thiệu ObjectRelational Mapping (ORM) 2. Entity Framework (EF) • Giới thiêu Entity Framework ̣ • Kiến trúc Entity Framework • Cài đăt Entity Famework ̣ • Tao Entity Data Model và gi ̣ ới thiệu cấu trúc thư mục • DBContext • Các loại đối tượng trong Entity • Thiết lập quan hệ cho Entity • Vòng đời của Entity • Các cách tiếp cân trong lâp tri ̣ ̣ ̀nh với Entity Framework • Th ực hiện truy vấn với EDM , thực hiện thêm, xóa, sửa trên Entity (CRUD). Xây dựng và triển khai Web Service cho ứng dụng di động 5
- 2.1 Giớ i thiêu Entity Framework ̣ Entity Framework (EF) •Là một bộ ánh xạ đối tượng – quan hệ cho phép người lập trình .NET làm việc với dữ liệu quan hệ qua các đối tượng (object), giúp lập trình viên không cần viết mã cho (hầu hết) những gì liên quan đến truy cập dữ liệu. → Entity Framework là môt mô hi ̣ ̀nh ORM. •Sử dụng LINQ để truy vấn và cập nhật dữ liệu với sự hỗ trợ của ADO.NET Data Provider. Xây dựng và triển khai Web Service cho ứng dụng di động 6
- 2.1 Giớ i thiêu Entity Framework ̣ Các thành phần trong Entity Framework: •Code: mã lệnh tạo thành các lớp đối tượng dữ liệu cho phép thao tác với dữ liệu. •Model: sơ đồ gồm các hộp mô tả các thực thể và các đường nối kết mô tả các quan hệ. •Database: cơ sở dữ liệu (có thể là SQL Server, Compact SQL Server, Local database, MySQL, Oracle,…) Xây dựng và triển khai Web Service cho ứng dụng di động 7
- 2.1 Giớ i thiêu Entity Framework ̣ Sơ đồ minh hoa ca ̣ ́c hình thức ánh xa – quan hê trong Entity Framework: ̣ ̣ Xây dựng và triển khai Web Service cho ứng dụng di động 8
- 2.2 Kiến trúc Entity Framework Mô hình kiến trúc Entity Framework Xây dựng và triển khai Web Service cho ứng dụng di động 9
- 2.2 Kiến trúc Entity Framework • EDM (Entity Data Model) Được phát triên b ̉ ởi Dr. Peter Chen (1970s). Xây dựng và triển khai Web Service cho ứng dụng di động 10
- 2.2 Kiến trúc Entity Framework • EDM (Entity Data Model) gồm ba phần chính: Khái niệm mô hình (Conceptual model) Các lớp và mối quan hệ tương ứng với cơ sở dữ liệu. Được độc lập từ cơ sở dữ liệu. Mapping (ban đô ̉ ̀) Thông tin các khái niệm mô hình do lâp tri ̣ ̀nh viên ánh xạ tới mô hình lưu trữ hay cơ sở dữ liệu. Mô hì nh lưu trữ (Storage model) Mô hình thiết kế cơ sở dữ liệu bao gồm Table, View, Store procedure, Relationship, Key,… Xây dựng và triển khai Web Service cho ứng dụng di động 11
- 2.2 Kiến trúc Entity Framework • LINQ to Entities Ngôn ngữ truy vấn được sử dụng để truy vấn với mô hình đối tượng (Object Model). Giá trị trả về tuỳ thuộc theo người lâp tri ̣ ̀nh, theo mô hình (Model). • Entity SQL Ngôn ngữ truy vấn giống như LINQ to Entities nhưng nó phức tạp hơn LINQ to Entities . Xây dựng và triển khai Web Service cho ứng dụng di động 12
- 2.2 Kiến trúc Entity Framework • Object Service Phục vụ cho việc truy cập, trả giá trị dữ liệu từ cơ sở dữ liệu. Cung cấp đầy đủ dịch vụ để quá trình chuyển đổi dữ liệu từ thực thể đến cấu trúc đối tượng dễ dàng hơn. • Entity Client Data Provider Chuyển đổi L2E hoặc truy vấn Entity SQL vào truy vấn SQL trong cơ sở dữ liệu. Giao tiếp với ADO.NET data provider hoặc lấy dữ liệu từ cơ sở dữ liệu. • ADO.Net Data Provider Giao tiếp với cơ sở dữ liệu sử dụng theo chuẩn ADO.NET Xây dựng và triển khai Web Service cho ứng dụng di động 13
- 2.3 Cà i đăt Entity Famework ̣ • Cà i đăt NuGet ̣ EF 6.1.3 (ban ̉ mới nhất hiên ̣ nay) yêu cầu phai ̉ có NuGet 2.8.6 trở lên. → Cần cài đăt ̣ NuGet cho Visual Studio 2013 trở xuống, riêng với Visual Studio 2015 đã được tích hợp sẵn mà không cần cài đăt. ̣ • Cà i đăt Entity Framework ̣ Cá ch 1: Sử dung lênh ̣ ̣ Khởi đông ̣ Visual Studio (đã cài NuGet) → Tools → NuGet Package Manager → Package Manager Console và gõ câu lệnh sau: Install-Package EntityFramework Xây dựng và triển khai Web Service cho ứng dụng di động 14
- 2.3 Cà i đăt Entity Famework ̣ • Cà i đăt Entity Framework ̣ Cá ch 2: Khởi đông Visual Studio (đa ̣ ̃ cài NuGet) → Tools → NuGet Package Manager → Manager NuGet Package for Solution… → gõ tìm Entity Framewwork và cài đăt no ̣ ́. Xây dựng và triển khai Web Service cho ứng dụng di động 15
- 2.4 Tạo Entity Data Model và giới thiệu cấu trúc thư mục Tao Entity Data Model ̣ Bướ c 1: Mở Visual Studio và tao môt d ̣ ̣ ự án (project). Bướ c 2: Thêm Entity Data Model vào dự án vừa tao. ̣ •Nhấp chuôt phai va ̣ ̉ ̀o dự án → Add → New Item → Visual C# Items → Data → ADO.NET Entity Data Model → Đặt tên cho Entity Data Model muốn tạo và chọn Add. •Từ hôp thoai Entitty Data Model Wizard ̣ ̣ → Chọn EF Designer from database → Next. •Chon d ̣ ữ liêu kê ̣ ́t nối (Choose Your Data Connection): chon ma ̣ ̃ nguồn (Data source), điền tên server (server name), tên CSDL và kiêm tra kê ̉ ́t nối (Test connection). •Chon phiên ban (Choose Your Version): ̣ ̉ Chọn Entity Framework 6.x. •Chon ̣ dữ liêu ̣ đối tượng và cài đăt ̣ (Choose Your Data Objects and Settings): Chon ̣ Tables → đổi tên Model Namspace → Fisnish. Xây dựng và triển khai Web Service cho ứng dụng di động 16
- 2.4 Tạo Entity Data Model và giới thiệu cấu trúc thư mục Thiế t kế EDM •Thiết kế EDM đại diện cho mô hình của chúng ta. •Nó bao gồm Entities, Associations và Multiplicity giữa các thực thể. •Nó giống như cấu trúc bảng (table) trong cơ sở dữ liệu, nhưng chúng ta có thể thêm hoặc trộn cột (merge column) hoặc xoá cột (remove column) mà không đòi hỏi phải từ ứng dụng của bạn thông qua thiết kế này. •Có thể thêm đối tượng mới có các cột trong mô hình này. •Chú ý: Nên hết sức cẩn thận khi thay đổi trong thiết kế. Xây dựng và triển khai Web Service cho ứng dụng di động 17
- 2.5 DBContext • Là đối tượng UnitOfWork là mẫu thiết kế về truy xuất CSDL. • Nó theo dõi những thay đổi của các đối tượng và chịu trách nhiệm cập nhật dữ liệu đến CSDL. • Nó giữ bản sao chép cục bộ của dữ liệu (ở CSDL) với những thay đổi chưa được cập nhật. → Đối tượng DBContext phải có thời gian sống ngắn đê ̉ nhanh chóng cập nhật CSDL nhằm giảm nguy cơ xảy ra các mâu thuẫn khi xử lý đồng bộ. • Khi sử dụng EF, chúng ta cần phải tạo một lớp ngữ cảnh k ế th ừa từ System.Data.Entity.DbContext. Xây dựng và triển khai Web Service cho ứng dụng di động 18
- 2.6 Các loại đố i tượng trong Entity Framework • Có 4 loại: EntityObject, POCO (Plain Old CLR Object) , POCO Proxy, SelfTracking Entities. • Với mỗi Entity đều có 2 loại thuộc tính: • Scalar properties • Gồm các thuộc tính nằm trong một entity. • Ứng với Entity Teacher có scalar properties là TeacherId, TeacherName, StandardId • Navigation properties • Là một con trỏ, trỏ đến một Entity khác nó hiện thực primary key – foreign key (1n). • Ứng với Entity Teacher có 2 navigation properties là Courses, Standard Xây dựng và triển khai Web Service cho ứng dụng di động 19
- 2.6 Các loại đố i tượng trong Entity Framework • EntityObject Mặc định ADO.NET Entity Data Model tạo một EntityObject từ database thông qua trình công cụ có sẵn của Visual Studio. Nó hiển thị đầy đủ cấu trúc của một Table (Fields Name, Data type,….) • POCO (Plain Old CLR Object) Là một thực thể của CSDL (database). EF sẽ tự động tạo ra các đối tượng ứng với CSDL. Nó cũng hỗ trợ cú pháp LINQ. Xây dựng và triển khai Web Service cho ứng dụng di động 20
CÓ THỂ BẠN MUỐN DOWNLOAD
-
Bài giảng Thiết kế và triển khai website: Chương 2 - GV. Bùi Quang Trường
88 p | 164 | 24
-
Bài giảng Thiết kế và triển khai Website - ĐH Thương Mại
0 p | 479 | 22
-
Bài giảng Triển khai ứng dụng mạng - Bài 4: Xây dựng DNS Server
50 p | 132 | 21
-
Bài giảng Kiểm thử phần mềm
59 p | 120 | 21
-
Bài giảng Triển khai ứng dụng mạng - Bài 5: Xây dựng Web, FPT server
63 p | 127 | 14
-
Bài giảng Triển khai ứng dụng mạng - Bài 2: Xây dựng LAN Router
24 p | 96 | 10
-
Bài giảng Thiết kế và triển khai websites - Chương 1: Tổng quan
28 p | 40 | 9
-
Bài giảng Thiết kế và triển khai websites - Chương 3: Ngôn ngữ và công cụ
59 p | 25 | 8
-
Bài giảng Phát triển ứng dụng web: Bài 2 - Lê Đình Thanh
45 p | 56 | 8
-
Bài giảng Thiết kế và phát triển trò chơi máy tính: Bài 5 - Trương Xuân Nam
34 p | 42 | 7
-
Bài giảng Bộ môn Công nghệ phần mềm - Bài 6: Kỹ thuật lập trình
43 p | 71 | 7
-
Bài giảng Thiết kế và triển khai Website - Trường đại học Thương Mại
43 p | 36 | 6
-
Bài giảng Mã nguồn mở - Phần 3: Xây dựng và phát triển phần mềm nguồn mở
80 p | 82 | 5
-
Bài giảng môn Công nghệ phần mềm - Chương 2: Quy trình xây dựng phần mềm
29 p | 36 | 5
-
Bài giảng Xây dựng hệ thống xác thực cho hệ thống thông tin của các cơ quan chính phủ
24 p | 27 | 4
-
Bài giảng Phòng chống tấn công mạng: Chương 6 - Bùi Trọng Tùng
28 p | 11 | 4
-
Bài giảng Phân tích và thiết kế hệ thống: Chương 4 - Nguyễn Nhật Quang
9 p | 20 | 3
-
Bài giảng Nhập môn Công nghệ thông tin 1: Xây dựng, phát triển và đánh giá thuật toán
29 p | 34 | 2
Chịu trách nhiệm nội dung:
Nguyễn Công Hà - Giám đốc Công ty TNHH TÀI LIỆU TRỰC TUYẾN VI NA
LIÊN HỆ
Địa chỉ: P402, 54A Nơ Trang Long, Phường 14, Q.Bình Thạnh, TP.HCM
Hotline: 093 303 0098
Email: support@tailieu.vn