intTypePromotion=1
zunia.vn Tuyển sinh 2024 dành cho Gen-Z zunia.vn zunia.vn
ADSENSE

Bài giảng Xây dựng và triển khai Web Service cho ứng dụng di động - Bài 3: Các công nghệ dùng để xây dựng Web Service cho ứng dụng di động

Chia sẻ: Minh Nhân | Ngày: | Loại File: PDF | Số trang:43

38
lượt xem
4
download
 
  Download Vui lòng tải xuống để xem tài liệu đầy đủ

Bài giảng "Xây dựng và triển khai Web Service cho ứng dụng di động - Bài 3: Các công nghệ dùng để xây dựng Web Service cho ứng dụng di động" trình bày các nội dung: Giới thiệu Object-Relational mapping (ORM), entity framework (EF). ntity Framework (EF)

Chủ đề:
Lưu

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: Các công nghệ dùng để xây dựng Web Service cho ứng dụng di động

  1. 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
  2. Nội dung 1. Giới thiệu Object-Relational Mapping (ORM) 2. Entity Framework (EF) Xây dựng và triển khai Web Service cho ứng dụng di động 2
  3. 1. Giới thiệu Object-Relational Mapping (ORM) • Object-Relational Mapping (ORM) là kỹ thuật ánh xạ từ mô hình đối tượng xuống CSDL quan hệ. • Cho phép thao tác trên bảng (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
  4. 1. Giới thiệu Object-Relational Mapping (ORM) • Ưu điểm • Độc lập với Hệ quản trị Cơ sở dữ liệu. • Cung cấp các API đơn giản dễ dùng, viết mã nhanh, bản thiết kế gần gũi với lập trì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 tạp nếu lạm dụng việc kế thừa quá nhiều. • Khó khăn trong việc quản lý session. Xây dựng và triển khai Web Service cho ứng dụng di động 4
  5. Nội dung 1. Giới thiệu Object-Relational Mapping (ORM) 2. Entity Framework (EF) • Giới thiệu Entity Framework • Kiến trúc Entity Framework • Cài đặt Entity Famework • Tạo 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 trì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
  6. 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ô hì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
  7. 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
  8. 2.1 Giới thiệu Entity Framework Sơ đồ minh họa các hình thức ánh xạ – quan hệ trong Entity Framework: Xây dựng và triển khai Web Service cho ứng dụng di động 8
  9. 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
  10. 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
  11. 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 (bản đồ) Thông tin các khái niệm mô hình do lập trì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
  12. 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 trì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
  13. 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
  14. 2.3 Cài đặt Entity Famework • Cài đặt NuGet EF 6.1.3 (bản mới nhất hiện nay) yêu cầu phải 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ử dụng 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
  15. 2.3 Cài đặt Entity Famework • Cài đặt Entity Framework  Cách 2: Khởi động Visual Studio (đã cài NuGet) → Tools → NuGet Package Manager → Manager NuGet Package for Solution… → gõ tìm Entity Framewwork và cài đặt nó. Xây dựng và triển khai Web Service cho ứng dụng di động 15
  16. 2.4 Tạo Entity Data Model và giới thiệu cấu trúc thư mục Tạo Entity Data Model Bước 1: Mở Visual Studio và tạo một dự án (project). Bước 2: Thêm Entity Data Model vào dự án vừa tạo. • Nhấp chuột phải và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 thoại Entitty Data Model Wizard → Chọn EF Designer from database → Next. • Chọn dữ liệu kết nối (Choose Your Data Connection): chọn mã nguồn (Data source), điền tên server (server name), tên CSDL và kiểm tra kết nối (Test connection). • Chọn phiên bản (Choose Your Version): Chọn Entity Framework 6.x. • Chọn dữ liệu đối tượng và cài đặt (Choose Your Data Objects and Settings): Chọn Tables → đổi tên Model Namspace → Fisnish. Xây dựng và triển khai Web Service cho ứng dụng di động 16
  17. 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
  18. 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
  19. 2.6 Các loại đối tượng trong Entity Framework • Có 4 loại: EntityObject, POCO (Plain Old CLR Object) , POCO Proxy, Self-Tracking 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 (1-n). • Ứ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
  20. 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
ADSENSE

CÓ THỂ BẠN MUỐN DOWNLOAD

 

Đồng bộ tài khoản
2=>2