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

bài 3 thao tác với dữ liệu sharepoint từ phía client

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 (544.13 KB, 37 trang )

Bài 3:
Thao tác với dữ liệu SharePoint từ phía client
Hệ thống bài cũ
Tìm hiểu về Web Part trên SharePoint 2010
Các giải pháp phát triển Web Part sử dụng Visual Studio
2010
Web Par chuẩn
Web Part trực quan
Tìm hiểu các trang trên SharePoint
Tìm hiểu về Web Part trên SharePoint 2010
Các giải pháp phát triển Web Part sử dụng Visual Studio
2010
Web Par chuẩn
Web Part trực quan
Tìm hiểu các trang trên SharePoint
Thao tác dữ liệu SharePoint từ phía Client
2
Mục tiêu bài học
Tìm hiểu mô hình đối tượng phía Client trên SharePoint
2010
Tìm hiểu các cách thao tác dữ liệu SharePoint từ phía
client sử dụng thư viện được cung cấp bởi SharePoint
2010
Nắm bắt các thủ tục để thao tác dữ liệu SharePoint từ
phía Client
Tìm hiểu mô hình đối tượng phía Client trên SharePoint
2010
Tìm hiểu các cách thao tác dữ liệu SharePoint từ phía
client sử dụng thư viện được cung cấp bởi SharePoint
2010
Nắm bắt các thủ tục để thao tác dữ liệu SharePoint từ


phía Client
Thao tác dữ liệu SharePoint từ phía Client
3
Lý do cần đến mô hình đối tượng
phía Client
Mô hình đối tượng SharePoint (Server OM) đòi hỏi các
ứng dụng phải được triển khai trên môi trường cài đặt
SharePoint
Mô hình đối tượng Client (Client OM) cho phép ứng dụng
từ xa (không chạy trên môi trường cài đặt SharePoint)
có thể thao tác dữ liệu trên các đối tượng SharePoint.
Mô hình đối tượng SharePoint (Server OM) đòi hỏi các
ứng dụng phải được triển khai trên môi trường cài đặt
SharePoint
Mô hình đối tượng Client (Client OM) cho phép ứng dụng
từ xa (không chạy trên môi trường cài đặt SharePoint)
có thể thao tác dữ liệu trên các đối tượng SharePoint.
Thao tác dữ liệu SharePoint từ phía Client
4
Các loại ứng dụng Client hỗ trợ
Các loại hình ứng dụng Client có thể thao tác dữ liệu
SharePoint
Windows
Console
ASP.NET
Silverlight trên môi trường có trình duyệt
Silverlight ngoài môi trường trình duyệt

Các loại hình ứng dụng Client có thể thao tác dữ liệu
SharePoint

Windows
Console
ASP.NET
Silverlight trên môi trường có trình duyệt
Silverlight ngoài môi trường trình duyệt

Thao tác dữ liệu SharePoint từ phía Client
5
Mô hình đối tượng phía client
Client Object Model
NhNhấấtt quánquán
HiHiệệuu ququảả
Thao tác dữ liệu SharePoint từ phía Client
6
ClientClient ApplicationApplication
NhNhấấtt quánquán
HiHiệệuu ququảả
Mô hình đối tượng phía client
Client Object Model
Nhằm đơn giản hóa và dễ dàng hơn trong việc sử dụng
các giao diện lập trình ứng dụng (API) để thêm (Add),
đọc (Retrieve), cập nhật (Update), xóa (Delete) và quản
lý dữ liệu SharePoint.
Nhằm đơn giản hóa và dễ dàng hơn trong việc sử dụng
các giao diện lập trình ứng dụng (API) để thêm (Add),
đọc (Retrieve), cập nhật (Update), xóa (Delete) và quản
lý dữ liệu SharePoint.
Thao tác dữ liệu SharePoint từ phía Client
7
Mô hình đối tượng phía client

Client Object Model
SharePoint Client-Side API
.NET CLR:
Được sử dụng cho các ứng dụng phía client sử dụng .NET
framework (vd: Windows Form, WPF…)
Silverlight:
Được sử dụng cho các ứng dụng phía client sử dụng
Silverlight
JavaScript (ECMAScript):
Được sử dụng cho các ứng dụng web với JavaScript
SharePoint Client-Side API
.NET CLR:
Được sử dụng cho các ứng dụng phía client sử dụng .NET
framework (vd: Windows Form, WPF…)
Silverlight:
Được sử dụng cho các ứng dụng phía client sử dụng
Silverlight
JavaScript (ECMAScript):
Được sử dụng cho các ứng dụng web với JavaScript
Thao tác dữ liệu SharePoint từ phía Client
8
So sánh các API phía client
với phía Server
Server
.NET Managed và
Silverlight
ECMAScript
Microsoft.SharePoint.
SPContext
Microsoft.SharePoint.Client

.ClientContext
SP.ClientContext
Microsoft.SharePoint.
SPSite
Microsoft.SharePoint.Client
.Site
SP.Site
Thao tác dữ liệu SharePoint từ phía Client
9
Microsoft.SharePoint.
SPSite
Microsoft.SharePoint.Client
.Site
Microsoft.SharePoint.
SPWeb
Microsoft.SharePoint.Client
.Web
SP.Web
Microsoft.SharePoint.
SPList
Microsoft.SharePoint.Client
.List
SP.List
Microsoft.SharePoint.
SPListItem
Microsoft.SharePoint.Client
.ListItem
SP.ListItem
Client OM: .NET CLR API
Cung cấp khả năng thao tác dữ liệu SharePoint từ xa

thông qua các ứng dụng nền Microsoft .NET
Thư viện lập trình (API): Thuộc thư mục 14\ISAPI
Microsoft.SharePoint.Client.dll (281kb)
Microsoft.SharePoint.Client.Runtime.dll (145kb)
Thao tác dữ liệu SharePoint từ phía Client
10
Client OM: .NET CLR API
ClientContext
Là đối tượng khởi nguồn cho quá trình thao tác dữ liệu
SharePoint từ xa thông qua các ứng dụng .NET
Cần phải khởi tạo đối tượng này trước khi truy vấn, cập
nhật dữ liệu SharePoint
Thao tác dữ liệu SharePoint từ phía Client
11
string siteUrl = "http://sp2010";
using (ClientContext myContext = new ClientContext(siteUrl))
{
myContext.Load(myContext.Site);
myContext.ExecuteQuery();
Console.WriteLine(myContext.Site.Url);
}
ClientContext
ClientContext:
Được coi như đối tượng trung tâm để thao tác các đối
tượng SharePoint từ phía Client
ClientContext():
Phương thức khởi tạo cho một Web site hoặc Site
Collection nhất định.
ClientContext.Load()
Chỉ ra đối tượng sẽ được gọi bởi Client

ClientContext:
Được coi như đối tượng trung tâm để thao tác các đối
tượng SharePoint từ phía Client
ClientContext():
Phương thức khởi tạo cho một Web site hoặc Site
Collection nhất định.
ClientContext.Load()
Chỉ ra đối tượng sẽ được gọi bởi Client
Thao tác dữ liệu SharePoint từ phía Client
12
ClientContext
ClientContext.LoadQuery()
Chỉ ra câu truy vấn sẽ được gọi bởi Client
ClientContext.ExecuteQuery()
Thực hiện việc tải các đối tượng trả về từ các yêu cầu
trong Load hoặc LoadQuery
ClientContext.Web.Update()
Thông báo cập nhật dữ liệu từ phía Client
ClientContext.LoadQuery()
Chỉ ra câu truy vấn sẽ được gọi bởi Client
ClientContext.ExecuteQuery()
Thực hiện việc tải các đối tượng trả về từ các yêu cầu
trong Load hoặc LoadQuery
ClientContext.Web.Update()
Thông báo cập nhật dữ liệu từ phía Client
Thao tác dữ liệu SharePoint từ phía Client
13
Cú pháp Query và cú pháp Method
.NET API có thể sử dụng 2 loại cú pháp (Query và
Method) để tải một đối tượng độc lập, các thuộc tính của

đối tượng hoặc một tập các enumerable object.
Thao tác dữ liệu SharePoint từ phía Client
14
Cú pháp Query và cú pháp Method
Cú pháp Query
Chỉ sử dụng trong
phương thức LoadQuery
Được sử dụng thông qua
hai bước
Khai báo biểu thức truy vấn
Nhận kết quả truy vấn
Cú pháp Method
Có thể được sử dụng ở cả
hai phương thức Load và
LoadQuery
Sử dụng biểu thức
Lambda để truy vấn
Chỉ sử dụng trong
phương thức LoadQuery
Được sử dụng thông qua
hai bước
Khai báo biểu thức truy vấn
Nhận kết quả truy vấn
Có thể được sử dụng ở cả
hai phương thức Load và
LoadQuery
Sử dụng biểu thức
Lambda để truy vấn
Thao tác dữ liệu SharePoint từ phía Client
15

Cú pháp Query
//Khởi tạo câu truy vấn LINQ
var query = from list
in clientContext.Web.Lists
where list.Title != null
select list;
//Truyền truy vấn vào phướng thức LoadQuery
var result = clientContext.LoadQuery(query);
//Thực hiện truy vấn
clientContext.ExecuteQuery();
//Khởi tạo câu truy vấn LINQ
var query = from list
in clientContext.Web.Lists
where list.Title != null
select list;
//Truyền truy vấn vào phướng thức LoadQuery
var result = clientContext.LoadQuery(query);
//Thực hiện truy vấn
clientContext.ExecuteQuery();
Thao tác dữ liệu SharePoint từ phía Client
16
Cú pháp Method
//Thực hiện tải truy vấn trực tiếp theo kiểu Lambda
clientContext.Load(clientContext.Web,
website => website.Lists
.Include(list => list.Title)
.Where(list => list.Title != null));
//Thực thi ngay truy vấn này
clientContext.ExecuteQuery();
//Thực hiện tải truy vấn trực tiếp theo kiểu Lambda

clientContext.Load(clientContext.Web,
website => website.Lists
.Include(list => list.Title)
.Where(list => list.Title != null));
//Thực thi ngay truy vấn này
clientContext.ExecuteQuery();
Thao tác dữ liệu SharePoint từ phía Client
17
Xác thực trong .NET Client OM
Mặc định .NET Client OM sử dụng cơ chế xác thực
Windows (Windows credentials) DefaultCredentials
Do đó các ứng dụng Client sử dụng .NET Client OM cần
phải được thực thi trên máy có cùng Domain với máy
chủ SharePoint.
Thao tác dữ liệu SharePoint từ phía Client
18
Tham khảo: />Xác thực trong .NET Client OM
Có thể thay đổi chế độ xác thực trên đối tượng
ClientContext khi SharePoint được cấu hình cơ chế xác
thực Form Authentication.
//chọn kiểu xác thực FormAuthentication cho ClientContext
clientContext.AuthenticationMode
= ClientAuthenticationMode.FormsAuthentication;
Thao tác dữ liệu SharePoint từ phía Client
19
//chọn kiểu xác thực FormAuthentication cho ClientContext
clientContext.AuthenticationMode
= ClientAuthenticationMode.FormsAuthentication;
//Truyền UserName và Password trong kiểu xác thực Form
FormsAuthenticationLoginInfo formsAuthInfo

= new FormsAuthenticationLoginInfo( "MyUser",
"MyPassword");
clientContext.FormsAuthenticationLoginInfo = formsAuthInfo;
Demo
Demo:
Ứng dụng Console sử dụng .NET Client Object Model để
thao tác dữ liệu SharePoint
Thao tác dữ liệu SharePoint từ phía Client
20
Client OM: Silverlight API
Silverlight Client OM cho phép ứng dụng Silverlight trong
các trang ASPX hoặc Web Part thao tác với dữ liệu
SharePoint
Thư mục chứa thư viện lập trình SharePoint phía client
cho các ứng dụng Silverlight
C:\Program Files\Common Files\Microsoft Shared\Web
Server Extensions \14\TEMPLATE\LAYOUTS\ClientBin
Microsoft.SharePoint.Client.Silverlight
– 262KB
Microsoft.SharePoint.Client.Silverlight.Runtime
– 138KB
Silverlight Client OM cho phép ứng dụng Silverlight trong
các trang ASPX hoặc Web Part thao tác với dữ liệu
SharePoint
Thư mục chứa thư viện lập trình SharePoint phía client
cho các ứng dụng Silverlight
C:\Program Files\Common Files\Microsoft Shared\Web
Server Extensions \14\TEMPLATE\LAYOUTS\ClientBin
Microsoft.SharePoint.Client.Silverlight
– 262KB

Microsoft.SharePoint.Client.Silverlight.Runtime
– 138KB
Thao tác dữ liệu SharePoint từ phía Client
21
Demo
Demo:
Viết một Silverlight
Nhúng Silverlight vào Silverlight Web Part trên SharePoint
để thao tác với dữ liệu SharePoint
Thao tác dữ liệu SharePoint từ phía Client
22
Client OM: JavaScript API
JavaScript OM cho phép làm việc với các đối tượng trên
SharePoint mà không cần phải triển khai code lên Server.
Chỉ làm việc với các đối tượng trong ngữ cảnh
SharePoint hiện thời (current context): các đối tượng
trên site SharePoint mà JavaScript được triển khai.
Thư viện JavaScript API có thể dễ dàng được tham chiếu
trong các trang SharePoint thông qua
_layouts/sp.js
Sử dụng thẻ <SharePoint:ScriptLink>
JavaScript OM cho phép làm việc với các đối tượng trên
SharePoint mà không cần phải triển khai code lên Server.
Chỉ làm việc với các đối tượng trong ngữ cảnh
SharePoint hiện thời (current context): các đối tượng
trên site SharePoint mà JavaScript được triển khai.
Thư viện JavaScript API có thể dễ dàng được tham chiếu
trong các trang SharePoint thông qua
_layouts/sp.js
Sử dụng thẻ <SharePoint:ScriptLink>

Thao tác dữ liệu SharePoint từ phía Client
23
Client OM: JavaScript API
Các thư viện lập trình SharePoint phía client, JavaScript
API nằm tại thư mục
C:\Program Files\Common Files\Microsoft Shared\Web
Server Extensions\14\TEMPLATE\LAYOUTS
SP.js (SP.debug.js):
– 380KB (559KB)
SP.Core.js (SP.Core.debug.js):
– 13KB (20KB)
SP.Runtime.js (SP.Runtime.debug.js):
– 68KB (108KB)
Các thư viện lập trình SharePoint phía client, JavaScript
API nằm tại thư mục
C:\Program Files\Common Files\Microsoft Shared\Web
Server Extensions\14\TEMPLATE\LAYOUTS
SP.js (SP.debug.js):
– 380KB (559KB)
SP.Core.js (SP.Core.debug.js):
– 13KB (20KB)
SP.Runtime.js (SP.Runtime.debug.js):
– 68KB (108KB)
Thao tác dữ liệu SharePoint từ phía Client
24
Thủ tục nhận dữ liệu từ phía Client
Khởi tạo đối tượng ClientContext
Sử dụng mô hình đối tượng để chỉ ra đối tượng hoặc dữ
liệu cần thao tác
//Truyền vào tham số URL của site để khởi tạo

var clientContext = new SP.ClientContext(siteUrl);
Khởi tạo đối tượng ClientContext
Sử dụng mô hình đối tượng để chỉ ra đối tượng hoặc dữ
liệu cần thao tác
Thao tác dữ liệu SharePoint từ phía Client
25
//Lấy ra đối tượng web của site
var oWebsite = clientContext.get_web();
//Lấy ra tất cả các lists của web đó
this.collList = oWebsite.get_lists();

×