Tải bản đầy đủ (.pdf) (28 trang)

bài 4 thao tác với dữ liệu sharepoint thông qua ado.net data services và rest

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (790.14 KB, 28 trang )

Bài 4:
Thao tác với dữ liệu SharePoint thông qua
ADO.NET Data Services và REST
Hệ thống bài cũ
Tìm hiểu mô hình đối tượng phía Client trên SharePoint
.NET Client OM
Silverlight Client OM
JavaScript Client OM
Tìm hiểu các thủ tục thao tác với dữ liệu SharePoint sử
dụng mô hình đối tượng phía Client
Tìm hiểu mô hình đối tượng phía Client trên SharePoint
.NET Client OM
Silverlight Client OM
JavaScript Client OM
Tìm hiểu các thủ tục thao tác với dữ liệu SharePoint sử
dụng mô hình đối tượng phía Client
Thao tác dữ liệu SharePoint thông qua ADO.NET Data Services và REST
2
Mục tiêu bài học
Tìm hiểu ADO.NET Data Services và REST trong
SharePoint 2010
Truy vấn dữ liệu SharePoint sử dụng REST trên trình
duyệt
Tìm hiểu các thủ tục để thao tác với dữ liệu SharePoint
trong ứng dụng phía Client sử dụng ADO.NET Data
Services
Tìm hiểu ADO.NET Data Services và REST trong
SharePoint 2010
Truy vấn dữ liệu SharePoint sử dụng REST trên trình
duyệt
Tìm hiểu các thủ tục để thao tác với dữ liệu SharePoint


trong ứng dụng phía Client sử dụng ADO.NET Data
Services
Thao tác dữ liệu SharePoint thông qua ADO.NET Data Services và REST
3
ADO.NET Data Services và REST
ADO.NET Data
Services
Thao tác dữ liệu SharePoint thông qua ADO.NET Data Services và REST
4
Atom
JSON
Post, Put, Get
Bất kỳ ứng dụng hoặc
nền tảng- .NET, Java,
Flash, Silverlight…
ADO.NET Data
Services
ADO.NET Data Services và REST
SharePoint 2010 được xây dựng trên nền WCF 3.5 nên
hỗ trợ ADO.NET Data Services.
ADO.NET Data Services là một trong những phương
pháp dùng để thao tác dữ liệu SharePoint từ phía Client
(.NET API, Silverlight API, JavaScript API)
SharePoint 2010 được xây dựng trên nền WCF 3.5 nên
hỗ trợ ADO.NET Data Services.
ADO.NET Data Services là một trong những phương
pháp dùng để thao tác dữ liệu SharePoint từ phía Client
(.NET API, Silverlight API, JavaScript API)
Thao tác dữ liệu SharePoint thông qua ADO.NET Data Services và REST
5

Tham khảo REST: />ADO.NET Data Services và REST
REST (Representational State Transfer) là một phương
pháp dùng để GET hoặc POST dữ liệu tới phía Server dễ
dàng.
Thông qua REST chúng ta có thể thao tác dữ liệu
SharePoint sử dụng các động từ HTTP chuẩn: GET, PUT,
POST, DELETE
REST (Representational State Transfer) là một phương
pháp dùng để GET hoặc POST dữ liệu tới phía Server dễ
dàng.
Thông qua REST chúng ta có thể thao tác dữ liệu
SharePoint sử dụng các động từ HTTP chuẩn: GET, PUT,
POST, DELETE
Thao tác dữ liệu SharePoint thông qua ADO.NET Data Services và REST
6
Tham khảo REST: />ADO.NET Data Services và REST
Dữ liệu trả về từ truy vấn REST được định dạng theo
JSON hoặc ATOM do đó nó độc lập với mọi nền tảng
REST có thể được sử dụng để truy vấn dữ liệu SharePoint
từ nhiều loại ứng dụng khác nhau
Dữ liệu trả về từ truy vấn REST được định dạng theo
JSON hoặc ATOM do đó nó độc lập với mọi nền tảng
REST có thể được sử dụng để truy vấn dữ liệu SharePoint
từ nhiều loại ứng dụng khác nhau
Thao tác dữ liệu SharePoint thông qua ADO.NET Data Services và REST
7
Tham khảo REST: />Giao diện REST trên SharePoint
REST trong SharePoint 2010 cung cấp khả năng truy cập
tới các Lists và Libraries như một dịch vụ dữ liệu quan
hệ.

REST sử dụng các quy ước URL mềm dẻo để truy vấn dữ
liệu bao gồm cả việc lọc và sắp xếp kết quả trả về trực
tiếp trên trình duyệt
REST trong SharePoint 2010 cung cấp khả năng truy cập
tới các Lists và Libraries như một dịch vụ dữ liệu quan
hệ.
REST sử dụng các quy ước URL mềm dẻo để truy vấn dữ
liệu bao gồm cả việc lọc và sắp xếp kết quả trả về trực
tiếp trên trình duyệt
Thao tác dữ liệu SharePoint thông qua ADO.NET Data Services và REST
8
Tham khảo thêm: />Giao diện REST trên SharePoint
Các toán tử trong SharePoint 2010 REST tuân theo bộ
toán tử tiêu chuẩn cho RESTful web services
GET: Read data
POST: Create data
PUT: Update data
DELETE: Delete data
Các toán tử trong SharePoint 2010 REST tuân theo bộ
toán tử tiêu chuẩn cho RESTful web services
GET: Read data
POST: Create data
PUT: Update data
DELETE: Delete data
Thao tác dữ liệu SharePoint thông qua ADO.NET Data Services và REST
9
Tham khảo thêm: />Ví dụ truy vấn REST qua URL
Thao tác dữ liệu SharePoint thông qua ADO.NET Data Services và REST
10
Demo

Demo:
Truy vấn Rest từ trình duyệt dữ liệu trên SharePoint Site
Lấy ra một list
Lấy ra một list item
Lấy ra một column của item
Lọc kết quả trả về
Phân trang
Sắp xếp
Demo:
Truy vấn Rest từ trình duyệt dữ liệu trên SharePoint Site
Lấy ra một list
Lấy ra một list item
Lấy ra một column của item
Lọc kết quả trả về
Phân trang
Sắp xếp
Thao tác dữ liệu SharePoint thông qua ADO.NET Data Services và REST
11
Ví dụ truy vấn REST qua URL
URL
Mô tả
http://myserver/_vti_bin/ListData.svc
Trả về danh sách các Lists và Libraries trên
SharePoint dưới dạng ATOM
http://myserver/_vti_bin/ListData.svc
/Announcements
Trả về danh sách các Items và các thuộc tính,
của list Annoucements dưới dạng XML Atom
http://myserver/_vti_bin/ListData.svc
/$metadata

Trả về danh sách các Lists và Libraries trên
SharePoint dưới dạng ATOM với mô tả chi
tiết về kiểu dữ liệu cho mỗi thực thể trên đó
http://myserver/_vti_bin/ListData.svc
/$metadata
Trả về danh sách các Lists và Libraries trên
SharePoint dưới dạng ATOM với mô tả chi
tiết về kiểu dữ liệu cho mỗi thực thể trên đó
Thao tác dữ liệu SharePoint thông qua ADO.NET Data Services và REST
12
Tham khảo thêm: />Ví dụ truy vấn REST qua URL
URL
Mô tả
http://myserver/_vti_bin/listdata.svc/
Employees(2)
Trả về Item có ID = 2 trong List Employees
http://myserver/_vti_bin/listdata.svc/
Employees?$orderby=Name
Sắp xếp danh sách Employees được trả về
theo cột Name.
http://myserver/_vti_bin/listdata.svc/
Employees?$filter=Project/Title eq
'My Project Title'
Sử dụng thuộc tính Navigation để lọc ra các
Employees có Project với tiêu đề là My
Project Title
http://myserver/_vti_bin/listdata.svc/
Employees?$filter=Project/Title eq
'My Project Title'
Sử dụng thuộc tính Navigation để lọc ra các

Employees có Project với tiêu đề là My
Project Title
Thao tác dữ liệu SharePoint thông qua ADO.NET Data Services và REST
13
Tham khảo thêm: />Các quy ước truy vấn URL
Lấy ra các lists và các items trong list
List of lists
…/_vti_bin/listdata.svc/
List
listdata.svc/Employees
Item
listdata.svc/Employees(123)
Thao tác dữ liệu SharePoint thông qua ADO.NET Data Services và REST
14
Item
listdata.svc/Employees(123)
Single column
listdata.svc/Employees(123)/Fullname
Lookup traversal
listdata.svc/Employees(123)/Project
Raw value access
listdata.svc/Employees(123)/Project/Title/
$value
Các quy ước truy vấn URL
Các tùy chọn về kết quả trả về
Sorting
listdata.svc/Employees?$orderby=Fullname
Filtering
listdata.svc/Employees?$filter=JobTitle eq
'SDE'

Thao tác dữ liệu SharePoint thông qua ADO.NET Data Services và REST
15
listdata.svc/Employees?$filter=JobTitle eq
'SDE'
Projection
listdata.svc/Employees?$select=Fullname,Job
Title
Paging
listdata.svc/Employees?$top=10&$skip=30
Inline expansion
listdata.svc/Employees?$expand=Project
Thủ tục thao tác dữ liệu SharePoint
sử dụng ADO.NET Data Services
Bước 1: Thêm Service Reference:
Chỉ ra địa chỉ SharePoint RESTful URL trong Visual Studio
2010: http://server/site_path/_vti_bin/listdata.svc
Đặt tên Namespace cho service
ADO.NET Data Services tạo một ORM (object relation
mapping) với các list trên web site và lưu vào file
reference.cs
Bước 1: Thêm Service Reference:
Chỉ ra địa chỉ SharePoint RESTful URL trong Visual Studio
2010: http://server/site_path/_vti_bin/listdata.svc
Đặt tên Namespace cho service
ADO.NET Data Services tạo một ORM (object relation
mapping) với các list trên web site và lưu vào file
reference.cs
Thao tác dữ liệu SharePoint thông qua ADO.NET Data Services và REST
16
Thủ tục thao tác dữ liệu SharePoint

sử dụng ADO.NET Data Services
Bước 1: Thêm Service Reference:
Reference.cs bao gồm:
[sitename]DataContext
– Vd: IntranetDataContext
[listname]Item.
– Vd: AnnouncementsItem,
TasksItem
CalendarItem

Bước 1: Thêm Service Reference:
Reference.cs bao gồm:
[sitename]DataContext
– Vd: IntranetDataContext
[listname]Item.
– Vd: AnnouncementsItem,
TasksItem
CalendarItem

Thao tác dữ liệu SharePoint thông qua ADO.NET Data Services và REST
17
Thủ tục thao tác dữ liệu SharePoint
sử dụng ADO.NET Data Services
Bước 2: khai báo namespace Service Reference thông
qua cú pháp using
Namespace của
Project
Bước 2: khai báo namespace Service Reference thông
qua cú pháp using
Thao tác dữ liệu SharePoint thông qua ADO.NET Data Services và REST

18
namespace FSE.SharePoint.Client
{
using IntranetServiceReference;
}
Namespace của
Service
Thủ tục thao tác dữ liệu SharePoint
sử dụng ADO.NET Data Services
Bước 3: Tham chiếu tới đối tượng Data Context.
Data Context: như là đầu vào trước khi làm việc với các
đối tượng trong ORM tương ứng với các Lists trên web
site.
Cần phải khởi tạo đối tượng này trước khi truy vấn dữ liệu
Thao tác dữ liệu SharePoint thông qua ADO.NET Data Services và REST
19
//Truyền vào URI của _vti_bin/listdata.svc để khởi tạo
MySiteDataContext context = new MySiteDataContext(
new Uri("http://MyServer/MySite/_vti_bin/listdata.svc"));
Thủ tục thao tác dữ liệu SharePoint
sử dụng ADO.NET Data Services
Bước 3: Tham chiếu tới đối tượng Data Context.
Tương tự như ClientContext trong các Client APIs khác
Được đặt tên bởi [sitename]DataContext
Vd: Title của web site là Intranet Home thì DataContext cho
web site này là IntranetHomeDataContext.
Bước 3: Tham chiếu tới đối tượng Data Context.
Tương tự như ClientContext trong các Client APIs khác
Được đặt tên bởi [sitename]DataContext
Vd: Title của web site là Intranet Home thì DataContext cho

web site này là IntranetHomeDataContext.
Thao tác dữ liệu SharePoint thông qua ADO.NET Data Services và REST
20
Thủ tục thao tác dữ liệu SharePoint
sử dụng ADO.NET Data Services
Truy vấn dữ liệu sử dụng LINQ
List<AnnouncementsItem> allAnnouncements
= context.Announcements.ToList();
//Truy vấn LINQ
var excitingAnnouncements
= from announcement in allAnnouncements
where announcement.Title.EndsWith("!")
select announcement;
Thao tác dữ liệu SharePoint thông qua ADO.NET Data Services và REST
21
List<AnnouncementsItem> allAnnouncements
= context.Announcements.ToList();
//Truy vấn LINQ
var excitingAnnouncements
= from announcement in allAnnouncements
where announcement.Title.EndsWith("!")
select announcement;
Thủ tục thao tác dữ liệu SharePoint
sử dụng ADO.NET Data Services
Lưu thay đổi tới đối tượng thông qua phương thức
SaveChanges
var excitingAnnouncements
= from announcement in allAnnouncements
where announcement.Title.EndsWith("!")
select announcement;

foreach (var announcement in excitingAnnouncements)
{
announcement.Title += "!!";
}
//Lưu thay đổi
context.SaveChanges();
Thao tác dữ liệu SharePoint thông qua ADO.NET Data Services và REST
22
var excitingAnnouncements
= from announcement in allAnnouncements
where announcement.Title.EndsWith("!")
select announcement;
foreach (var announcement in excitingAnnouncements)
{
announcement.Title += "!!";
}
//Lưu thay đổi
context.SaveChanges();
Ưu nhược điểm khi sử dụng
ADO.NET Data Services
Ưu điểm
Truy vấn dữ liệu list với định kiểu rõ (strongly typed)
Vd: Với SharePoint Client OM thì list item Announcement
và Contacts đều được xác định với kiểu ListItem. Nhưng
với ADO.NET Data Services được xác định rõ là
AnnouncementsItem và ContactsItem.
Nhược điểm
Chỉ làm việc với Lists mà không làm việc với các nội dung
khác như Content Types…
Ưu điểm

Truy vấn dữ liệu list với định kiểu rõ (strongly typed)
Vd: Với SharePoint Client OM thì list item Announcement
và Contacts đều được xác định với kiểu ListItem. Nhưng
với ADO.NET Data Services được xác định rõ là
AnnouncementsItem và ContactsItem.
Nhược điểm
Chỉ làm việc với Lists mà không làm việc với các nội dung
khác như Content Types…
Thao tác dữ liệu SharePoint thông qua ADO.NET Data Services và REST
23
Tham khảo: />Yêu cầu về môi trường
ADO.NET Data Services phải được cài đặt trên môi
trường phát triển
Với Windows Server 2008 SP2: ADO.NET Data Services
Update for .NET Framework 3.5 SP1 for Windows Server
2003, Windows XP, Windows Vista and Windows Server
2008
Với Windows Server 2008 R2 hoặc Windows 7: ADO.NET
Data Services Update for .NET Framework 3.5 SP1 for
Windows 7 and Windows Server 2008 R2
ADO.NET Data Services phải được cài đặt trên môi
trường phát triển
Với Windows Server 2008 SP2: ADO.NET Data Services
Update for .NET Framework 3.5 SP1 for Windows Server
2003, Windows XP, Windows Vista and Windows Server
2008
Với Windows Server 2008 R2 hoặc Windows 7: ADO.NET
Data Services Update for .NET Framework 3.5 SP1 for
Windows 7 and Windows Server 2008 R2
Thao tác dữ liệu SharePoint thông qua ADO.NET Data Services và REST

24
DEMO
Demo:
Ứng dụng Console truy vấn dữ liệu SharePoint sử dụng
ADO.NET Data Services
Demo:
Viết một Silverlight sử dụng ADO.NET Data Services để
truy vấn dữ liệu SharePoint
Nhúng Silverlight này vào Silverlight Web Part trên
SharePoint
Demo:
Ứng dụng Console truy vấn dữ liệu SharePoint sử dụng
ADO.NET Data Services
Demo:
Viết một Silverlight sử dụng ADO.NET Data Services để
truy vấn dữ liệu SharePoint
Nhúng Silverlight này vào Silverlight Web Part trên
SharePoint
Thao tác dữ liệu SharePoint thông qua ADO.NET Data Services và REST
25

×