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: http://en.wikipedia.org/wiki/Representational_State_Transfer
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: http://en.wikipedia.org/wiki/Representational_State_Transfer
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: http://en.wikipedia.org/wiki/Representational_State_Transfer
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: http://msdn.microsoft.com/en-us/library/ff521587.aspx
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: http://msdn.microsoft.com/en-us/library/ff521587.aspx
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: http://msdn.microsoft.com/en-us/library/ff521587.aspx
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: http://msdn.microsoft.com/en-us/library/ff521587.aspx
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: http://msdn.microsoft.com/en-us/library/ee535480.aspx
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
Tổng kết bài học
Ngoài các Client API như .NET, Silverlight, JavaScript thì
SharePoint còn cung cấp cơ chế thao tác dữ liệu từ
Client thông qua ADO.NET Data Services và REST.
RESTful trên SharePoint được chỉ định tại địa chỉ URL
http://server/site_path/_vti_bin/listdata.svc
Ngoài các Client API như .NET, Silverlight, JavaScript thì
SharePoint còn cung cấp cơ chế thao tác dữ liệu từ
Client thông qua ADO.NET Data Services và REST.
RESTful trên SharePoint được chỉ định tại địa chỉ URL
http://server/site_path/_vti_bin/listdata.svc
Thao tác dữ liệu SharePoint thông qua ADO.NET Data Services và REST 26
Tổng kết bài học
REST sử dụng các động từ HTTP để thực hiện các hành
động
GET: Read data
POST: Create data
PUT: Update data
DELETE: Delete data
REST sử dụng các động từ HTTP để thực hiện các hành
động
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 27
Danh sách tham khảo
http://msdn.microsoft.com/en-us/library/ff521587.aspx
http://msdn.microsoft.com/en-
us/library/ee535480(v=office.14).aspx
Thao tác dữ liệu SharePoint thông qua ADO.NET Data Services và REST 28

Bài 4: Thao tác với dữ liệu SharePoint thông qua ADO.NET Data Services và REST

  • 1.
    Bài 4: Thao tácvới dữ liệu SharePoint thông qua ADO.NET Data Services và REST
  • 2.
    Hệ thống bàicũ 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
  • 3.
    Mục tiêu bàihọ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
  • 4.
    ADO.NET Data Servicesvà 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
  • 5.
    ADO.NET Data Servicesvà 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: http://en.wikipedia.org/wiki/Representational_State_Transfer
  • 6.
    ADO.NET Data Servicesvà 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: http://en.wikipedia.org/wiki/Representational_State_Transfer
  • 7.
    ADO.NET Data Servicesvà 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: http://en.wikipedia.org/wiki/Representational_State_Transfer
  • 8.
    Giao diện RESTtrê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: http://msdn.microsoft.com/en-us/library/ff521587.aspx
  • 9.
    Giao diện RESTtrê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: http://msdn.microsoft.com/en-us/library/ff521587.aspx
  • 10.
    Ví dụ truyvấn REST qua URL Thao tác dữ liệu SharePoint thông qua ADO.NET Data Services và REST 10
  • 11.
    Demo Demo: Truy vấn Resttừ 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
  • 12.
    Ví dụ truyvấ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: http://msdn.microsoft.com/en-us/library/ff521587.aspx
  • 13.
    Ví dụ truyvấ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: http://msdn.microsoft.com/en-us/library/ff521587.aspx
  • 14.
    Các quy ướctruy 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
  • 15.
    Các quy ướctruy 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
  • 16.
    Thủ tục thaotá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
  • 17.
    Thủ tục thaotá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
  • 18.
    Thủ tục thaotá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
  • 19.
    Thủ tục thaotá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"));
  • 20.
    Thủ tục thaotá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
  • 21.
    Thủ tục thaotá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;
  • 22.
    Thủ tục thaotá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();
  • 23.
    Ưu nhược điểmkhi 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: http://msdn.microsoft.com/en-us/library/ee535480.aspx
  • 24.
    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
  • 25.
    DEMO Demo: Ứng dụng Consoletruy 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
  • 26.
    Tổng kết bàihọc Ngoài các Client API như .NET, Silverlight, JavaScript thì SharePoint còn cung cấp cơ chế thao tác dữ liệu từ Client thông qua ADO.NET Data Services và REST. RESTful trên SharePoint được chỉ định tại địa chỉ URL http://server/site_path/_vti_bin/listdata.svc Ngoài các Client API như .NET, Silverlight, JavaScript thì SharePoint còn cung cấp cơ chế thao tác dữ liệu từ Client thông qua ADO.NET Data Services và REST. RESTful trên SharePoint được chỉ định tại địa chỉ URL http://server/site_path/_vti_bin/listdata.svc Thao tác dữ liệu SharePoint thông qua ADO.NET Data Services và REST 26
  • 27.
    Tổng kết bàihọc REST sử dụng các động từ HTTP để thực hiện các hành động GET: Read data POST: Create data PUT: Update data DELETE: Delete data REST sử dụng các động từ HTTP để thực hiện các hành động 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 27
  • 28.
    Danh sách thamkhảo http://msdn.microsoft.com/en-us/library/ff521587.aspx http://msdn.microsoft.com/en- us/library/ee535480(v=office.14).aspx Thao tác dữ liệu SharePoint thông qua ADO.NET Data Services và REST 28