SlideShare a Scribd company logo
1 of 37
Download to read offline
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 14ISAPI
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: http://msdn.microsoft.com/en-us/library/ee535729.aspx
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 FilesCommon FilesMicrosoft SharedWeb
Server Extensions 14TEMPLATELAYOUTSClientBin
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 FilesCommon FilesMicrosoft SharedWeb
Server Extensions 14TEMPLATELAYOUTSClientBin
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 FilesCommon FilesMicrosoft SharedWeb
Server Extensions14TEMPLATELAYOUTS
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 FilesCommon FilesMicrosoft SharedWeb
Server Extensions14TEMPLATELAYOUTS
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();
Thủ tục nhận dữ liệu từ phía Client
Tải tại chỗ sử dụng Load() để trả về đối tượng, tập đối
tượng hay dữ liệu
Tải qua truy vấn sử dụng LoadQuery() để trả về một
enumerable collection của các đối tượng
this.collList = oWebsite.get_lists();
//Thực hiện tải lists về
clientContext.load(collList);
Tải tại chỗ sử dụng Load() để trả về đối tượng, tập đối
tượng hay dữ liệu
Tải qua truy vấn sử dụng LoadQuery() để trả về một
enumerable collection của các đối tượng
Thao tác dữ liệu SharePoint từ phía Client 26
var collList = oWebsite.get_lists();
//Thực hiện tải lists về trong đó có lọc thuộc tính lấy về
this.listInfoCollection =
clientContext.loadQuery(collList,
'Include(Title, Id)');
Thủ tục nhận dữ liệu từ phía Client
Thực thi truy vấn bằng việc gọi phương thức
ExecuteQuery: trong .NET API hay Silverlight API
Thực thi truy vấn bằng việc gọi phương thức
ExecuteQueryAsync: trong JavaScrip API hoặc Silverlight
API
clientContext.Load(oWebsite);
//Thực thi truy vấn
clientContext.ExecuteQuery();
Thực thi truy vấn bằng việc gọi phương thức
ExecuteQuery: trong .NET API hay Silverlight API
Thực thi truy vấn bằng việc gọi phương thức
ExecuteQueryAsync: trong JavaScrip API hoặc Silverlight
API
Thao tác dữ liệu SharePoint từ phía Client 27
clientContext.executeQueryAsync(
Function.createDelegate(this, this.onQuerySucceeded),
Function.createDelegate(this, this.onQueryFailed)); }
function onQuerySucceeded(sender, args) {…}
function onQueryFailed(sender, args) {…}
Nhận các đối tượng từ phía Client
JavaScript API
function retrieveWebSite() {
var clientContext
= new SP.ClientContext('/sites/MySiteCollection');
var oWebsite = clientContext.get_web();
var collList = oWebsite.get_lists();
this.oList = collList.getByTitle('Announcements');
clientContext.load(oList);
clientContext.executeQueryAsync(
Function.createDelegate(this, this.onQuerySucceeded),
Function.createDelegate(this, this.onQueryFailed));
}
Thao tác dữ liệu SharePoint từ phía Client 28
function retrieveWebSite() {
var clientContext
= new SP.ClientContext('/sites/MySiteCollection');
var oWebsite = clientContext.get_web();
var collList = oWebsite.get_lists();
this.oList = collList.getByTitle('Announcements');
clientContext.load(oList);
clientContext.executeQueryAsync(
Function.createDelegate(this, this.onQuerySucceeded),
Function.createDelegate(this, this.onQueryFailed));
}
Nhận các đối tượng từ phía Client
.NET API
ClientContext clientContext
= new ClientContext("http://MyServer/");
Web oWebsite = clientContext.Web;
ListCollection collList = oWebsite.Lists;
List oList = collList.GetByTitle("Announcements");
clientContext.Load(oList);
clientContext.ExecuteQuery();
Console.WriteLine("Title: {0} Created: {1}",
oList.Title, oList.Created);
Thao tác dữ liệu SharePoint từ phía Client 29
ClientContext clientContext
= new ClientContext("http://MyServer/");
Web oWebsite = clientContext.Web;
ListCollection collList = oWebsite.Lists;
List oList = collList.GetByTitle("Announcements");
clientContext.Load(oList);
clientContext.ExecuteQuery();
Console.WriteLine("Title: {0} Created: {1}",
oList.Title, oList.Created);
Chuỗi truy vấn trong JavaScript OM
JavaScript Client OM không hỗ trợ truy vấn LINQ
JavaScript sử dụng biểu thức chuỗi (string expression)
để truy vấn
Cú pháp đối với một list:
Cú pháp đối với list collection:
clientContext.load(oList, 'Title' ,'Id');
JavaScript Client OM không hỗ trợ truy vấn LINQ
JavaScript sử dụng biểu thức chuỗi (string expression)
để truy vấn
Cú pháp đối với một list:
Cú pháp đối với list collection:
Thao tác dữ liệu SharePoint từ phía Client 30
myListArray = clientContext.loadQuery(collList,
'Include(Title,Fields.Include(Title,Description))');
Tham khảo: http://msdn.microsoft.com/en-us/library/ee539350.aspx
Cập nhật đối tượng
Để cập nhận đối tượng sử dụng Client OM, gọi phương
thức Update cho cả .NET và JavaScript OM.
.NET Client OM
JavaScript Client OM
List oList = collList.GetByTitle("My List");
oList.Description = "Changed description...";
oList.Update();
Để cập nhận đối tượng sử dụng Client OM, gọi phương
thức Update cho cả .NET và JavaScript OM.
.NET Client OM
JavaScript Client OM
Thao tác dữ liệu SharePoint từ phía Client 31
Tham khảo: http://msdn.microsoft.com/en-us/library/ee539350.aspx
List oList = collList.GetByTitle("My List");
oList.Description = "Changed description...";
oList.Update();
this.oList = collList.getByTitle('My List');
oList.set_title('Changed description...');
oList.update();
Thủ tục nhận một List Items
Để nhận về danh sách các Item trong một List, thông
thường chúng ta sử dụng CAML để chỉ ra các Item nào
sẽ nằm trong giá trị trả về
Việc lấy về danh sách các Item trong list được thực hiện
thông qua hai bước
Khi báo truy vấn CAML
Gửi truy vấn này vào phương thức GetItems
Để nhận về danh sách các Item trong một List, thông
thường chúng ta sử dụng CAML để chỉ ra các Item nào
sẽ nằm trong giá trị trả về
Việc lấy về danh sách các Item trong list được thực hiện
thông qua hai bước
Khi báo truy vấn CAML
Gửi truy vấn này vào phương thức GetItems
Thao tác dữ liệu SharePoint từ phía Client 32
Truy vấn CAML: http://msdn.microsoft.com/en-us/library/ms462365.aspx
VD: Thủ tục nhận một List Item
.NET Client OM
JavaScript Client OM
CamlQuery camlQuery = new CamlQuery();
camlQuery.ViewXml = "<View><Query><Where><Leq>"
+ "<FieldRef Name='ID'/><Value Type='Number'>100</Value>"
+ "</Leq></Where></Query><RowLimit>50</RowLimit></View>";
ListItemCollection collListItem = oList.GetItems(camlQuery);
.NET Client OM
JavaScript Client OM
Thao tác dữ liệu SharePoint từ phía Client 33
var camlQuery = new SP.CamlQuery();
camlQuery.set_viewXml('<View><Query><Where><Leq>'
+ '<FieldRef Name='ID'/><Value Type='Number'>100</Value>'
+ '</Leq></Where></Query><RowLimit>50</RowLimit></View>');
this.collListItem = oList.getItems(camlQuery);
Demo
Demo:
Sử dụng JavaScript để truy vấn dữ liệu SharePoint
Thao tác dữ liệu SharePoint từ phía Client 34
Liên kết thực hành
Công việc thông thường
How to: Work with Websites
How to: Retrieve Lists
How to: Create, Update, and Delete Lists
How to: Retrieve List Items
How to: Create, Update, and Delete List Items
How to: Work with Users and Groups
How to: Work with Roles
How to: Break Role Assignment Inheritance
How to: Work with User Custom Actions
How to: Work with Web Parts on a Page
Công việc nâng cao
How to: Use Conditional Scope
How to: Use Exception Handling Scope
Code Sample: Silverlight List Viewer
Công việc thông thường
How to: Work with Websites
How to: Retrieve Lists
How to: Create, Update, and Delete Lists
How to: Retrieve List Items
How to: Create, Update, and Delete List Items
How to: Work with Users and Groups
How to: Work with Roles
How to: Break Role Assignment Inheritance
How to: Work with User Custom Actions
How to: Work with Web Parts on a Page
Công việc nâng cao
How to: Use Conditional Scope
How to: Use Exception Handling Scope
Code Sample: Silverlight List Viewer
Thao tác dữ liệu SharePoint từ phía Client 35
Tổng kết bài học
SharePoint cung cấp các thư viện để làm việc với dữ liệu
từ phía clients
Các thư viện này phù hợp với từng loại ứng dụng khác
nhau
.NET CLR: các ứng dụng desktop,…
Silverligth: các ứng dụng nền Silverlight
ECMAScript: các ứng dụng web, với JavaScript
SharePoint cung cấp các thư viện để làm việc với dữ liệu
từ phía clients
Các thư viện này phù hợp với từng loại ứng dụng khác
nhau
.NET CLR: các ứng dụng desktop,…
Silverligth: các ứng dụng nền Silverlight
ECMAScript: các ứng dụng web, với JavaScript
Thao tác dữ liệu SharePoint từ phía Client 36
Danh sách tham khảo
http://msdn.microsoft.com/en-us/library/ee539350.aspx
http://msdn.microsoft.com/en-us/library/hh185009.aspx
http://msdn.microsoft.com/en-us/library/ee539350.aspx
Thao tác dữ liệu SharePoint từ phía Client 37

More Related Content

What's hot

Share point 2010-for-admin-basic-v2
Share point 2010-for-admin-basic-v2Share point 2010-for-admin-basic-v2
Share point 2010-for-admin-basic-v2Hưng Nguyễn
 
Bài 7: Đối tượng Data Source -Đóng gói ứng dụng - Giới thiệu các kĩ thuật lập...
Bài 7: Đối tượng Data Source -Đóng gói ứng dụng - Giới thiệu các kĩ thuật lập...Bài 7: Đối tượng Data Source -Đóng gói ứng dụng - Giới thiệu các kĩ thuật lập...
Bài 7: Đối tượng Data Source -Đóng gói ứng dụng - Giới thiệu các kĩ thuật lập...MasterCode.vn
 
Lập trình web asp.net MVC
Lập trình web asp.net MVCLập trình web asp.net MVC
Lập trình web asp.net MVCMasterCode.vn
 
Bài 1: Làm quen với ASP.NET - Giáo trình FPT - Có ví dụ kèm theo
Bài 1: Làm quen với ASP.NET - Giáo trình FPT - Có ví dụ kèm theoBài 1: Làm quen với ASP.NET - Giáo trình FPT - Có ví dụ kèm theo
Bài 1: Làm quen với ASP.NET - Giáo trình FPT - Có ví dụ kèm theoMasterCode.vn
 
Bài 4: Template & điều hướng trang Web - Giáo trình FPT - Có ví dụ kèm theo
Bài 4: Template & điều hướng trang Web - Giáo trình FPT - Có ví dụ kèm theoBài 4: Template & điều hướng trang Web - Giáo trình FPT - Có ví dụ kèm theo
Bài 4: Template & điều hướng trang Web - Giáo trình FPT - Có ví dụ kèm theoMasterCode.vn
 
Bài 3: Lập trình giao diện điều khiển & Xử lý sự kiện - Lập trình winform - G...
Bài 3: Lập trình giao diện điều khiển & Xử lý sự kiện - Lập trình winform - G...Bài 3: Lập trình giao diện điều khiển & Xử lý sự kiện - Lập trình winform - G...
Bài 3: Lập trình giao diện điều khiển & Xử lý sự kiện - Lập trình winform - G...MasterCode.vn
 
Bài 7: Lập trình với CSDL – Sử dụng DESIGNER & Triển khai ứng dụng - Lập trìn...
Bài 7: Lập trình với CSDL – Sử dụng DESIGNER & Triển khai ứng dụng - Lập trìn...Bài 7: Lập trình với CSDL – Sử dụng DESIGNER & Triển khai ứng dụng - Lập trìn...
Bài 7: Lập trình với CSDL – Sử dụng DESIGNER & Triển khai ứng dụng - Lập trìn...MasterCode.vn
 
Tu hoc microsoft asp.net
Tu hoc microsoft asp.netTu hoc microsoft asp.net
Tu hoc microsoft asp.netnamhh1984ag
 
Bài 6: Điều khiển DetailsView, FormView, ListView, DataPager
Bài 6: Điều khiển DetailsView, FormView, ListView, DataPagerBài 6: Điều khiển DetailsView, FormView, ListView, DataPager
Bài 6: Điều khiển DetailsView, FormView, ListView, DataPagerMasterCode.vn
 
Slide Bao Cao Thuc Tap
Slide Bao Cao Thuc TapSlide Bao Cao Thuc Tap
Slide Bao Cao Thuc Tapthanhhauuit
 
Bài 5: Làm quen với lập trình CSDL ASP.NET - Giáo trình FPT - Có ví dụ kèm theo
Bài 5: Làm quen với lập trình CSDL ASP.NET - Giáo trình FPT - Có ví dụ kèm theoBài 5: Làm quen với lập trình CSDL ASP.NET - Giáo trình FPT - Có ví dụ kèm theo
Bài 5: Làm quen với lập trình CSDL ASP.NET - Giáo trình FPT - Có ví dụ kèm theoMasterCode.vn
 
Bài 2: Hướng dẫn làm việc với các điều khiển - Giáo trình FPT - Có ví dụ kèm ...
Bài 2: Hướng dẫn làm việc với các điều khiển - Giáo trình FPT - Có ví dụ kèm ...Bài 2: Hướng dẫn làm việc với các điều khiển - Giáo trình FPT - Có ví dụ kèm ...
Bài 2: Hướng dẫn làm việc với các điều khiển - Giáo trình FPT - Có ví dụ kèm ...MasterCode.vn
 

What's hot (14)

Share point 2010-for-admin-basic-v2
Share point 2010-for-admin-basic-v2Share point 2010-for-admin-basic-v2
Share point 2010-for-admin-basic-v2
 
Bài 7: Đối tượng Data Source -Đóng gói ứng dụng - Giới thiệu các kĩ thuật lập...
Bài 7: Đối tượng Data Source -Đóng gói ứng dụng - Giới thiệu các kĩ thuật lập...Bài 7: Đối tượng Data Source -Đóng gói ứng dụng - Giới thiệu các kĩ thuật lập...
Bài 7: Đối tượng Data Source -Đóng gói ứng dụng - Giới thiệu các kĩ thuật lập...
 
Lập trình web asp.net MVC
Lập trình web asp.net MVCLập trình web asp.net MVC
Lập trình web asp.net MVC
 
Lap trinh asp.net
Lap trinh asp.netLap trinh asp.net
Lap trinh asp.net
 
Bài 1: Làm quen với ASP.NET - Giáo trình FPT - Có ví dụ kèm theo
Bài 1: Làm quen với ASP.NET - Giáo trình FPT - Có ví dụ kèm theoBài 1: Làm quen với ASP.NET - Giáo trình FPT - Có ví dụ kèm theo
Bài 1: Làm quen với ASP.NET - Giáo trình FPT - Có ví dụ kèm theo
 
Bài 4: Template & điều hướng trang Web - Giáo trình FPT - Có ví dụ kèm theo
Bài 4: Template & điều hướng trang Web - Giáo trình FPT - Có ví dụ kèm theoBài 4: Template & điều hướng trang Web - Giáo trình FPT - Có ví dụ kèm theo
Bài 4: Template & điều hướng trang Web - Giáo trình FPT - Có ví dụ kèm theo
 
Bài 3: Lập trình giao diện điều khiển & Xử lý sự kiện - Lập trình winform - G...
Bài 3: Lập trình giao diện điều khiển & Xử lý sự kiện - Lập trình winform - G...Bài 3: Lập trình giao diện điều khiển & Xử lý sự kiện - Lập trình winform - G...
Bài 3: Lập trình giao diện điều khiển & Xử lý sự kiện - Lập trình winform - G...
 
Bài 7: Lập trình với CSDL – Sử dụng DESIGNER & Triển khai ứng dụng - Lập trìn...
Bài 7: Lập trình với CSDL – Sử dụng DESIGNER & Triển khai ứng dụng - Lập trìn...Bài 7: Lập trình với CSDL – Sử dụng DESIGNER & Triển khai ứng dụng - Lập trìn...
Bài 7: Lập trình với CSDL – Sử dụng DESIGNER & Triển khai ứng dụng - Lập trìn...
 
Tu hoc microsoft asp.net
Tu hoc microsoft asp.netTu hoc microsoft asp.net
Tu hoc microsoft asp.net
 
Bài 6: Điều khiển DetailsView, FormView, ListView, DataPager
Bài 6: Điều khiển DetailsView, FormView, ListView, DataPagerBài 6: Điều khiển DetailsView, FormView, ListView, DataPager
Bài 6: Điều khiển DetailsView, FormView, ListView, DataPager
 
Slide Bao Cao Thuc Tap
Slide Bao Cao Thuc TapSlide Bao Cao Thuc Tap
Slide Bao Cao Thuc Tap
 
01 tong-quan-ado
01 tong-quan-ado01 tong-quan-ado
01 tong-quan-ado
 
Bài 5: Làm quen với lập trình CSDL ASP.NET - Giáo trình FPT - Có ví dụ kèm theo
Bài 5: Làm quen với lập trình CSDL ASP.NET - Giáo trình FPT - Có ví dụ kèm theoBài 5: Làm quen với lập trình CSDL ASP.NET - Giáo trình FPT - Có ví dụ kèm theo
Bài 5: Làm quen với lập trình CSDL ASP.NET - Giáo trình FPT - Có ví dụ kèm theo
 
Bài 2: Hướng dẫn làm việc với các điều khiển - Giáo trình FPT - Có ví dụ kèm ...
Bài 2: Hướng dẫn làm việc với các điều khiển - Giáo trình FPT - Có ví dụ kèm ...Bài 2: Hướng dẫn làm việc với các điều khiển - Giáo trình FPT - Có ví dụ kèm ...
Bài 2: Hướng dẫn làm việc với các điều khiển - Giáo trình FPT - Có ví dụ kèm ...
 

Viewers also liked

Hệ thống thông tin quản lý - Bài 8 Phát triển hệ thống thông tin (phần 3)
Hệ thống thông tin quản lý - Bài 8 Phát triển hệ thống thông tin (phần 3)Hệ thống thông tin quản lý - Bài 8 Phát triển hệ thống thông tin (phần 3)
Hệ thống thông tin quản lý - Bài 8 Phát triển hệ thống thông tin (phần 3)MasterCode.vn
 
Lập trình sáng tạo creative computing textbook mastercode.vn
Lập trình sáng tạo creative computing textbook mastercode.vnLập trình sáng tạo creative computing textbook mastercode.vn
Lập trình sáng tạo creative computing textbook mastercode.vnMasterCode.vn
 
Bài 1 Tìm hiểu về Hệ Thống Quản Trị Nội Dung - CMS
Bài 1 Tìm hiểu về Hệ Thống Quản Trị Nội Dung - CMSBài 1 Tìm hiểu về Hệ Thống Quản Trị Nội Dung - CMS
Bài 1 Tìm hiểu về Hệ Thống Quản Trị Nội Dung - CMSMasterCode.vn
 
Pdf tim hieuc#vaungdung-mastercode.vn
Pdf tim hieuc#vaungdung-mastercode.vnPdf tim hieuc#vaungdung-mastercode.vn
Pdf tim hieuc#vaungdung-mastercode.vnMasterCode.vn
 
BÀI 5 Tạo app cho thiết bị di động & một số cải tiến cho web di động - Giáo t...
BÀI 5 Tạo app cho thiết bị di động & một số cải tiến cho web di động - Giáo t...BÀI 5 Tạo app cho thiết bị di động & một số cải tiến cho web di động - Giáo t...
BÀI 5 Tạo app cho thiết bị di động & một số cải tiến cho web di động - Giáo t...MasterCode.vn
 
Bài 11: Công cụ quản trị Server Manager - Giáo trình FPT
Bài 11: Công cụ quản trị Server Manager - Giáo trình FPTBài 11: Công cụ quản trị Server Manager - Giáo trình FPT
Bài 11: Công cụ quản trị Server Manager - Giáo trình FPTMasterCode.vn
 
Bài 7: Quản trị người dùng thông qua chính sách nhóm - Giáo trình FPT
Bài 7: Quản trị người dùng thông qua chính sách nhóm - Giáo trình FPTBài 7: Quản trị người dùng thông qua chính sách nhóm - Giáo trình FPT
Bài 7: Quản trị người dùng thông qua chính sách nhóm - Giáo trình FPTMasterCode.vn
 
SharePoint 2010 Online for Developer
SharePoint 2010 Online for DeveloperSharePoint 2010 Online for Developer
SharePoint 2010 Online for DeveloperK.Mohamed Faizal
 
SharePoint Migration What do I expect ? (The issues and solutions)
SharePoint Migration What do I expect ? (The issues and solutions)SharePoint Migration What do I expect ? (The issues and solutions)
SharePoint Migration What do I expect ? (The issues and solutions)K.Mohamed Faizal
 
SharePoint Saturday Stockholm 2015 - SharePoint Online Friend or Foe
SharePoint Saturday Stockholm 2015 - SharePoint Online Friend or FoeSharePoint Saturday Stockholm 2015 - SharePoint Online Friend or Foe
SharePoint Saturday Stockholm 2015 - SharePoint Online Friend or FoeJasper Oosterveld
 
Hệ thống thông tin quản lý - Bài 4 Quản lý HTTT trong doanh nghiệp (phần 2)
Hệ thống thông tin quản lý - Bài 4 Quản lý HTTT trong doanh nghiệp (phần 2)Hệ thống thông tin quản lý - Bài 4 Quản lý HTTT trong doanh nghiệp (phần 2)
Hệ thống thông tin quản lý - Bài 4 Quản lý HTTT trong doanh nghiệp (phần 2)MasterCode.vn
 
Hệ thống thông tin quản lý - Bài 7 Phát triển hệ thống thông tin (phần 2)
Hệ thống thông tin quản lý - Bài 7 Phát triển hệ thống thông tin (phần 2)Hệ thống thông tin quản lý - Bài 7 Phát triển hệ thống thông tin (phần 2)
Hệ thống thông tin quản lý - Bài 7 Phát triển hệ thống thông tin (phần 2)MasterCode.vn
 
Bài 5 Hướng dẫn xây dựng Extension
Bài 5 Hướng dẫn xây dựng ExtensionBài 5 Hướng dẫn xây dựng Extension
Bài 5 Hướng dẫn xây dựng ExtensionMasterCode.vn
 
Bài 6 Tải file và hình ảnh lên website - Xây dựng ứng dụng web
Bài 6 Tải file và hình ảnh lên website - Xây dựng ứng dụng webBài 6 Tải file và hình ảnh lên website - Xây dựng ứng dụng web
Bài 6 Tải file và hình ảnh lên website - Xây dựng ứng dụng webMasterCode.vn
 
Bài 6 Sử dụng hàm - Giáo trình FPT
Bài 6 Sử dụng hàm - Giáo trình FPTBài 6 Sử dụng hàm - Giáo trình FPT
Bài 6 Sử dụng hàm - Giáo trình FPTMasterCode.vn
 
BÀI 1 Những khái niệm đầu tiên về HTML5 - Giáo trình FPT
BÀI 1 Những khái niệm đầu tiên về HTML5 - Giáo trình FPTBÀI 1 Những khái niệm đầu tiên về HTML5 - Giáo trình FPT
BÀI 1 Những khái niệm đầu tiên về HTML5 - Giáo trình FPTMasterCode.vn
 
Hệ thống thông tin quản lý - Bài 5 Quản lý HTTT trong doanh nghiệp (phần 3)
Hệ thống thông tin quản lý - Bài 5 Quản lý HTTT trong doanh nghiệp (phần 3)Hệ thống thông tin quản lý - Bài 5 Quản lý HTTT trong doanh nghiệp (phần 3)
Hệ thống thông tin quản lý - Bài 5 Quản lý HTTT trong doanh nghiệp (phần 3)MasterCode.vn
 

Viewers also liked (17)

Hệ thống thông tin quản lý - Bài 8 Phát triển hệ thống thông tin (phần 3)
Hệ thống thông tin quản lý - Bài 8 Phát triển hệ thống thông tin (phần 3)Hệ thống thông tin quản lý - Bài 8 Phát triển hệ thống thông tin (phần 3)
Hệ thống thông tin quản lý - Bài 8 Phát triển hệ thống thông tin (phần 3)
 
Lập trình sáng tạo creative computing textbook mastercode.vn
Lập trình sáng tạo creative computing textbook mastercode.vnLập trình sáng tạo creative computing textbook mastercode.vn
Lập trình sáng tạo creative computing textbook mastercode.vn
 
Bài 1 Tìm hiểu về Hệ Thống Quản Trị Nội Dung - CMS
Bài 1 Tìm hiểu về Hệ Thống Quản Trị Nội Dung - CMSBài 1 Tìm hiểu về Hệ Thống Quản Trị Nội Dung - CMS
Bài 1 Tìm hiểu về Hệ Thống Quản Trị Nội Dung - CMS
 
Pdf tim hieuc#vaungdung-mastercode.vn
Pdf tim hieuc#vaungdung-mastercode.vnPdf tim hieuc#vaungdung-mastercode.vn
Pdf tim hieuc#vaungdung-mastercode.vn
 
BÀI 5 Tạo app cho thiết bị di động & một số cải tiến cho web di động - Giáo t...
BÀI 5 Tạo app cho thiết bị di động & một số cải tiến cho web di động - Giáo t...BÀI 5 Tạo app cho thiết bị di động & một số cải tiến cho web di động - Giáo t...
BÀI 5 Tạo app cho thiết bị di động & một số cải tiến cho web di động - Giáo t...
 
Bài 11: Công cụ quản trị Server Manager - Giáo trình FPT
Bài 11: Công cụ quản trị Server Manager - Giáo trình FPTBài 11: Công cụ quản trị Server Manager - Giáo trình FPT
Bài 11: Công cụ quản trị Server Manager - Giáo trình FPT
 
Bài 7: Quản trị người dùng thông qua chính sách nhóm - Giáo trình FPT
Bài 7: Quản trị người dùng thông qua chính sách nhóm - Giáo trình FPTBài 7: Quản trị người dùng thông qua chính sách nhóm - Giáo trình FPT
Bài 7: Quản trị người dùng thông qua chính sách nhóm - Giáo trình FPT
 
SharePoint 2010 Online for Developer
SharePoint 2010 Online for DeveloperSharePoint 2010 Online for Developer
SharePoint 2010 Online for Developer
 
SharePoint Migration What do I expect ? (The issues and solutions)
SharePoint Migration What do I expect ? (The issues and solutions)SharePoint Migration What do I expect ? (The issues and solutions)
SharePoint Migration What do I expect ? (The issues and solutions)
 
SharePoint Saturday Stockholm 2015 - SharePoint Online Friend or Foe
SharePoint Saturday Stockholm 2015 - SharePoint Online Friend or FoeSharePoint Saturday Stockholm 2015 - SharePoint Online Friend or Foe
SharePoint Saturday Stockholm 2015 - SharePoint Online Friend or Foe
 
Hệ thống thông tin quản lý - Bài 4 Quản lý HTTT trong doanh nghiệp (phần 2)
Hệ thống thông tin quản lý - Bài 4 Quản lý HTTT trong doanh nghiệp (phần 2)Hệ thống thông tin quản lý - Bài 4 Quản lý HTTT trong doanh nghiệp (phần 2)
Hệ thống thông tin quản lý - Bài 4 Quản lý HTTT trong doanh nghiệp (phần 2)
 
Hệ thống thông tin quản lý - Bài 7 Phát triển hệ thống thông tin (phần 2)
Hệ thống thông tin quản lý - Bài 7 Phát triển hệ thống thông tin (phần 2)Hệ thống thông tin quản lý - Bài 7 Phát triển hệ thống thông tin (phần 2)
Hệ thống thông tin quản lý - Bài 7 Phát triển hệ thống thông tin (phần 2)
 
Bài 5 Hướng dẫn xây dựng Extension
Bài 5 Hướng dẫn xây dựng ExtensionBài 5 Hướng dẫn xây dựng Extension
Bài 5 Hướng dẫn xây dựng Extension
 
Bài 6 Tải file và hình ảnh lên website - Xây dựng ứng dụng web
Bài 6 Tải file và hình ảnh lên website - Xây dựng ứng dụng webBài 6 Tải file và hình ảnh lên website - Xây dựng ứng dụng web
Bài 6 Tải file và hình ảnh lên website - Xây dựng ứng dụng web
 
Bài 6 Sử dụng hàm - Giáo trình FPT
Bài 6 Sử dụng hàm - Giáo trình FPTBài 6 Sử dụng hàm - Giáo trình FPT
Bài 6 Sử dụng hàm - Giáo trình FPT
 
BÀI 1 Những khái niệm đầu tiên về HTML5 - Giáo trình FPT
BÀI 1 Những khái niệm đầu tiên về HTML5 - Giáo trình FPTBÀI 1 Những khái niệm đầu tiên về HTML5 - Giáo trình FPT
BÀI 1 Những khái niệm đầu tiên về HTML5 - Giáo trình FPT
 
Hệ thống thông tin quản lý - Bài 5 Quản lý HTTT trong doanh nghiệp (phần 3)
Hệ thống thông tin quản lý - Bài 5 Quản lý HTTT trong doanh nghiệp (phần 3)Hệ thống thông tin quản lý - Bài 5 Quản lý HTTT trong doanh nghiệp (phần 3)
Hệ thống thông tin quản lý - Bài 5 Quản lý HTTT trong doanh nghiệp (phần 3)
 

Similar to Bài 3: Thao tác với dữ liệu SharePoint từ phía client

đề thi trắc nghiệm asp net co kem đáp án trên 400 câu hỏi thiết kế website ki...
đề thi trắc nghiệm asp net co kem đáp án trên 400 câu hỏi thiết kế website ki...đề thi trắc nghiệm asp net co kem đáp án trên 400 câu hỏi thiết kế website ki...
đề thi trắc nghiệm asp net co kem đáp án trên 400 câu hỏi thiết kế website ki...anh hieu
 
Net06 asp.net applications & state management
Net06 asp.net applications & state managementNet06 asp.net applications & state management
Net06 asp.net applications & state managementhoangnguyentien
 
BÀI 6 Làm việc với thành phần FORM, SPRY trong DREAMWEAVER CS4 - Giáo trình FPT
BÀI 6 Làm việc với thành phần FORM, SPRY trong DREAMWEAVER CS4 - Giáo trình FPTBÀI 6 Làm việc với thành phần FORM, SPRY trong DREAMWEAVER CS4 - Giáo trình FPT
BÀI 6 Làm việc với thành phần FORM, SPRY trong DREAMWEAVER CS4 - Giáo trình FPTMasterCode.vn
 
Bai ii khai quat ha tang co so
Bai ii   khai quat ha tang co soBai ii   khai quat ha tang co so
Bai ii khai quat ha tang co soGiang Nguyễn
 
01-Introduction.pdf
01-Introduction.pdf01-Introduction.pdf
01-Introduction.pdfBird Web
 
Videoconferencereport
VideoconferencereportVideoconferencereport
Videoconferencereporttuanle1984
 
Bai3 basic servlets_956
Bai3 basic servlets_956Bai3 basic servlets_956
Bai3 basic servlets_956Ham Chơi
 
đồ áN thiết kế web tuyển dụng sử dụng asp.net
đồ áN thiết kế web tuyển dụng sử dụng asp.netđồ áN thiết kế web tuyển dụng sử dụng asp.net
đồ áN thiết kế web tuyển dụng sử dụng asp.netnataliej4
 
Ajax report
Ajax reportAjax report
Ajax reportdvcuong
 
Asp.net mvc 3 (c#) (9 tutorials) egroups vn
Asp.net mvc 3 (c#) (9 tutorials)   egroups vnAsp.net mvc 3 (c#) (9 tutorials)   egroups vn
Asp.net mvc 3 (c#) (9 tutorials) egroups vnNguyen Van Hung
 
Slide Web Service
Slide Web ServiceSlide Web Service
Slide Web Serviceask bills
 
Web Architecture
Web ArchitectureWeb Architecture
Web ArchitectureHiep Luong
 
Chapter 2 tong quan ve he thong web
Chapter 2 tong quan ve he thong webChapter 2 tong quan ve he thong web
Chapter 2 tong quan ve he thong webxuandiencntt
 

Similar to Bài 3: Thao tác với dữ liệu SharePoint từ phía client (20)

400 câu hỏi thi trắc nghiệm ASP.NET có đáp án - Thiết kế website kinh doanh 2
400 câu hỏi thi trắc nghiệm ASP.NET có đáp án - Thiết kế website kinh doanh 2400 câu hỏi thi trắc nghiệm ASP.NET có đáp án - Thiết kế website kinh doanh 2
400 câu hỏi thi trắc nghiệm ASP.NET có đáp án - Thiết kế website kinh doanh 2
 
đề thi trắc nghiệm asp net co kem đáp án trên 400 câu hỏi thiết kế website ki...
đề thi trắc nghiệm asp net co kem đáp án trên 400 câu hỏi thiết kế website ki...đề thi trắc nghiệm asp net co kem đáp án trên 400 câu hỏi thiết kế website ki...
đề thi trắc nghiệm asp net co kem đáp án trên 400 câu hỏi thiết kế website ki...
 
Ung dun web chuong 2
Ung dun web  chuong 2Ung dun web  chuong 2
Ung dun web chuong 2
 
Asp
AspAsp
Asp
 
Net06 asp.net applications & state management
Net06 asp.net applications & state managementNet06 asp.net applications & state management
Net06 asp.net applications & state management
 
Slide6
Slide6Slide6
Slide6
 
BÀI 6 Làm việc với thành phần FORM, SPRY trong DREAMWEAVER CS4 - Giáo trình FPT
BÀI 6 Làm việc với thành phần FORM, SPRY trong DREAMWEAVER CS4 - Giáo trình FPTBÀI 6 Làm việc với thành phần FORM, SPRY trong DREAMWEAVER CS4 - Giáo trình FPT
BÀI 6 Làm việc với thành phần FORM, SPRY trong DREAMWEAVER CS4 - Giáo trình FPT
 
Bai ii khai quat ha tang co so
Bai ii   khai quat ha tang co soBai ii   khai quat ha tang co so
Bai ii khai quat ha tang co so
 
01-Introduction.pdf
01-Introduction.pdf01-Introduction.pdf
01-Introduction.pdf
 
Videoconferencereport
VideoconferencereportVideoconferencereport
Videoconferencereport
 
Bai3 basic servlets_956
Bai3 basic servlets_956Bai3 basic servlets_956
Bai3 basic servlets_956
 
Mô Hình MVC 3.0
Mô Hình MVC 3.0Mô Hình MVC 3.0
Mô Hình MVC 3.0
 
Web1012 slide 7
Web1012   slide 7Web1012   slide 7
Web1012 slide 7
 
đồ áN thiết kế web tuyển dụng sử dụng asp.net
đồ áN thiết kế web tuyển dụng sử dụng asp.netđồ áN thiết kế web tuyển dụng sử dụng asp.net
đồ áN thiết kế web tuyển dụng sử dụng asp.net
 
Ajax report
Ajax reportAjax report
Ajax report
 
Asp.net mvc 3 (c#) (9 tutorials) egroups vn
Asp.net mvc 3 (c#) (9 tutorials)   egroups vnAsp.net mvc 3 (c#) (9 tutorials)   egroups vn
Asp.net mvc 3 (c#) (9 tutorials) egroups vn
 
Slide Web Service
Slide Web ServiceSlide Web Service
Slide Web Service
 
Web Architecture
Web ArchitectureWeb Architecture
Web Architecture
 
Windows Aruze
Windows AruzeWindows Aruze
Windows Aruze
 
Chapter 2 tong quan ve he thong web
Chapter 2 tong quan ve he thong webChapter 2 tong quan ve he thong web
Chapter 2 tong quan ve he thong web
 

More from MasterCode.vn

Pd ftai lieu-tieng-anh-cho-nguoi-moi-bat-dau-mastercode.vn
Pd ftai lieu-tieng-anh-cho-nguoi-moi-bat-dau-mastercode.vnPd ftai lieu-tieng-anh-cho-nguoi-moi-bat-dau-mastercode.vn
Pd ftai lieu-tieng-anh-cho-nguoi-moi-bat-dau-mastercode.vnMasterCode.vn
 
Why apps-succeed-wpr-mastercode.vn
Why apps-succeed-wpr-mastercode.vnWhy apps-succeed-wpr-mastercode.vn
Why apps-succeed-wpr-mastercode.vnMasterCode.vn
 
Dzone performancemonitoring2016-mastercode.vn
Dzone performancemonitoring2016-mastercode.vnDzone performancemonitoring2016-mastercode.vn
Dzone performancemonitoring2016-mastercode.vnMasterCode.vn
 
Google công bố thông tin lịch xu hướng ngành 2017 mastercode.vn
Google công bố thông tin lịch xu hướng ngành 2017 mastercode.vnGoogle công bố thông tin lịch xu hướng ngành 2017 mastercode.vn
Google công bố thông tin lịch xu hướng ngành 2017 mastercode.vnMasterCode.vn
 
Nghiên cứu về khách hàng mastercode.vn
Nghiên cứu về khách hàng mastercode.vnNghiên cứu về khách hàng mastercode.vn
Nghiên cứu về khách hàng mastercode.vnMasterCode.vn
 
Pd fbuoi7 8--tongquanseo-mastercode.vn
Pd fbuoi7 8--tongquanseo-mastercode.vnPd fbuoi7 8--tongquanseo-mastercode.vn
Pd fbuoi7 8--tongquanseo-mastercode.vnMasterCode.vn
 
Pd fbuoi5 6-ảnh hưởng của social media tới kết quả seo-mastercode.vn
Pd fbuoi5 6-ảnh hưởng của social media tới kết quả seo-mastercode.vnPd fbuoi5 6-ảnh hưởng của social media tới kết quả seo-mastercode.vn
Pd fbuoi5 6-ảnh hưởng của social media tới kết quả seo-mastercode.vnMasterCode.vn
 
Pdf buoi3 4-link-building-tran-ngoc-chinh-mastercode.vn
Pdf buoi3 4-link-building-tran-ngoc-chinh-mastercode.vnPdf buoi3 4-link-building-tran-ngoc-chinh-mastercode.vn
Pdf buoi3 4-link-building-tran-ngoc-chinh-mastercode.vnMasterCode.vn
 
Pd fbuoi3 4-kỹ thuật xây dựng back link-mastercode.vn
Pd fbuoi3 4-kỹ thuật xây dựng back link-mastercode.vnPd fbuoi3 4-kỹ thuật xây dựng back link-mastercode.vn
Pd fbuoi3 4-kỹ thuật xây dựng back link-mastercode.vnMasterCode.vn
 
Pd fbuoi2 onpage – tối ưu hóa trang web-mastercode.vn
Pd fbuoi2 onpage – tối ưu hóa trang web-mastercode.vnPd fbuoi2 onpage – tối ưu hóa trang web-mastercode.vn
Pd fbuoi2 onpage – tối ưu hóa trang web-mastercode.vnMasterCode.vn
 
Pd fbuoi1 giới thiệu seo tools cơ bản-seo manager + seo guy-mastercode.vn
Pd fbuoi1 giới thiệu seo tools cơ bản-seo manager + seo guy-mastercode.vnPd fbuoi1 giới thiệu seo tools cơ bản-seo manager + seo guy-mastercode.vn
Pd fbuoi1 giới thiệu seo tools cơ bản-seo manager + seo guy-mastercode.vnMasterCode.vn
 
Pdf buoi1 2-on-page-tran-ngoc-chinh-mastercode.vn
Pdf buoi1 2-on-page-tran-ngoc-chinh-mastercode.vnPdf buoi1 2-on-page-tran-ngoc-chinh-mastercode.vn
Pdf buoi1 2-on-page-tran-ngoc-chinh-mastercode.vnMasterCode.vn
 
Pdfbài 7 máy tính xác tay và máy in bảo trì sự cố máy tính-mastercode.vn
Pdfbài 7 máy tính xác tay và máy in   bảo trì sự cố máy tính-mastercode.vnPdfbài 7 máy tính xác tay và máy in   bảo trì sự cố máy tính-mastercode.vn
Pdfbài 7 máy tính xác tay và máy in bảo trì sự cố máy tính-mastercode.vnMasterCode.vn
 
Pdfbài 6 bảo trì máy tính bảo trì sự cố máy tính-mastercode.vn
Pdfbài 6 bảo trì máy tính   bảo trì sự cố máy tính-mastercode.vnPdfbài 6 bảo trì máy tính   bảo trì sự cố máy tính-mastercode.vn
Pdfbài 6 bảo trì máy tính bảo trì sự cố máy tính-mastercode.vnMasterCode.vn
 
Pdfbài 5 bảo trì và tối ưu windows bảo trì sự cố máy tính-mastercode.vn
Pdfbài 5 bảo trì và tối ưu windows   bảo trì sự cố máy tính-mastercode.vnPdfbài 5 bảo trì và tối ưu windows   bảo trì sự cố máy tính-mastercode.vn
Pdfbài 5 bảo trì và tối ưu windows bảo trì sự cố máy tính-mastercode.vnMasterCode.vn
 
Pdfbài 4 ổ cứng hard drive bảo trì sự cố máy tính-mastercode.vn
Pdfbài 4 ổ cứng hard drive   bảo trì sự cố máy tính-mastercode.vnPdfbài 4 ổ cứng hard drive   bảo trì sự cố máy tính-mastercode.vn
Pdfbài 4 ổ cứng hard drive bảo trì sự cố máy tính-mastercode.vnMasterCode.vn
 
Pdfbài 3 cpu và ram bảo trì sự cố máy tính-mastercode.vn
Pdfbài 3 cpu và ram   bảo trì sự cố máy tính-mastercode.vnPdfbài 3 cpu và ram   bảo trì sự cố máy tính-mastercode.vn
Pdfbài 3 cpu và ram bảo trì sự cố máy tính-mastercode.vnMasterCode.vn
 
Pdfbài 1 giới thiệu chung về phần cứng bảo trì sự cố máy tính-mastercode.vn
Pdfbài 1 giới thiệu chung về phần cứng   bảo trì sự cố máy tính-mastercode.vnPdfbài 1 giới thiệu chung về phần cứng   bảo trì sự cố máy tính-mastercode.vn
Pdfbài 1 giới thiệu chung về phần cứng bảo trì sự cố máy tính-mastercode.vnMasterCode.vn
 
Pdfbài 2 bo mạch chủ (main) bảo trì sự cố máy tính-mastercode.vn
Pdfbài 2 bo mạch chủ (main)   bảo trì sự cố máy tính-mastercode.vnPdfbài 2 bo mạch chủ (main)   bảo trì sự cố máy tính-mastercode.vn
Pdfbài 2 bo mạch chủ (main) bảo trì sự cố máy tính-mastercode.vnMasterCode.vn
 
Pdf bai 7 làm việc với truy vấn nâng cao-slide 07-quan tri csdl voi access-ma...
Pdf bai 7 làm việc với truy vấn nâng cao-slide 07-quan tri csdl voi access-ma...Pdf bai 7 làm việc với truy vấn nâng cao-slide 07-quan tri csdl voi access-ma...
Pdf bai 7 làm việc với truy vấn nâng cao-slide 07-quan tri csdl voi access-ma...MasterCode.vn
 

More from MasterCode.vn (20)

Pd ftai lieu-tieng-anh-cho-nguoi-moi-bat-dau-mastercode.vn
Pd ftai lieu-tieng-anh-cho-nguoi-moi-bat-dau-mastercode.vnPd ftai lieu-tieng-anh-cho-nguoi-moi-bat-dau-mastercode.vn
Pd ftai lieu-tieng-anh-cho-nguoi-moi-bat-dau-mastercode.vn
 
Why apps-succeed-wpr-mastercode.vn
Why apps-succeed-wpr-mastercode.vnWhy apps-succeed-wpr-mastercode.vn
Why apps-succeed-wpr-mastercode.vn
 
Dzone performancemonitoring2016-mastercode.vn
Dzone performancemonitoring2016-mastercode.vnDzone performancemonitoring2016-mastercode.vn
Dzone performancemonitoring2016-mastercode.vn
 
Google công bố thông tin lịch xu hướng ngành 2017 mastercode.vn
Google công bố thông tin lịch xu hướng ngành 2017 mastercode.vnGoogle công bố thông tin lịch xu hướng ngành 2017 mastercode.vn
Google công bố thông tin lịch xu hướng ngành 2017 mastercode.vn
 
Nghiên cứu về khách hàng mastercode.vn
Nghiên cứu về khách hàng mastercode.vnNghiên cứu về khách hàng mastercode.vn
Nghiên cứu về khách hàng mastercode.vn
 
Pd fbuoi7 8--tongquanseo-mastercode.vn
Pd fbuoi7 8--tongquanseo-mastercode.vnPd fbuoi7 8--tongquanseo-mastercode.vn
Pd fbuoi7 8--tongquanseo-mastercode.vn
 
Pd fbuoi5 6-ảnh hưởng của social media tới kết quả seo-mastercode.vn
Pd fbuoi5 6-ảnh hưởng của social media tới kết quả seo-mastercode.vnPd fbuoi5 6-ảnh hưởng của social media tới kết quả seo-mastercode.vn
Pd fbuoi5 6-ảnh hưởng của social media tới kết quả seo-mastercode.vn
 
Pdf buoi3 4-link-building-tran-ngoc-chinh-mastercode.vn
Pdf buoi3 4-link-building-tran-ngoc-chinh-mastercode.vnPdf buoi3 4-link-building-tran-ngoc-chinh-mastercode.vn
Pdf buoi3 4-link-building-tran-ngoc-chinh-mastercode.vn
 
Pd fbuoi3 4-kỹ thuật xây dựng back link-mastercode.vn
Pd fbuoi3 4-kỹ thuật xây dựng back link-mastercode.vnPd fbuoi3 4-kỹ thuật xây dựng back link-mastercode.vn
Pd fbuoi3 4-kỹ thuật xây dựng back link-mastercode.vn
 
Pd fbuoi2 onpage – tối ưu hóa trang web-mastercode.vn
Pd fbuoi2 onpage – tối ưu hóa trang web-mastercode.vnPd fbuoi2 onpage – tối ưu hóa trang web-mastercode.vn
Pd fbuoi2 onpage – tối ưu hóa trang web-mastercode.vn
 
Pd fbuoi1 giới thiệu seo tools cơ bản-seo manager + seo guy-mastercode.vn
Pd fbuoi1 giới thiệu seo tools cơ bản-seo manager + seo guy-mastercode.vnPd fbuoi1 giới thiệu seo tools cơ bản-seo manager + seo guy-mastercode.vn
Pd fbuoi1 giới thiệu seo tools cơ bản-seo manager + seo guy-mastercode.vn
 
Pdf buoi1 2-on-page-tran-ngoc-chinh-mastercode.vn
Pdf buoi1 2-on-page-tran-ngoc-chinh-mastercode.vnPdf buoi1 2-on-page-tran-ngoc-chinh-mastercode.vn
Pdf buoi1 2-on-page-tran-ngoc-chinh-mastercode.vn
 
Pdfbài 7 máy tính xác tay và máy in bảo trì sự cố máy tính-mastercode.vn
Pdfbài 7 máy tính xác tay và máy in   bảo trì sự cố máy tính-mastercode.vnPdfbài 7 máy tính xác tay và máy in   bảo trì sự cố máy tính-mastercode.vn
Pdfbài 7 máy tính xác tay và máy in bảo trì sự cố máy tính-mastercode.vn
 
Pdfbài 6 bảo trì máy tính bảo trì sự cố máy tính-mastercode.vn
Pdfbài 6 bảo trì máy tính   bảo trì sự cố máy tính-mastercode.vnPdfbài 6 bảo trì máy tính   bảo trì sự cố máy tính-mastercode.vn
Pdfbài 6 bảo trì máy tính bảo trì sự cố máy tính-mastercode.vn
 
Pdfbài 5 bảo trì và tối ưu windows bảo trì sự cố máy tính-mastercode.vn
Pdfbài 5 bảo trì và tối ưu windows   bảo trì sự cố máy tính-mastercode.vnPdfbài 5 bảo trì và tối ưu windows   bảo trì sự cố máy tính-mastercode.vn
Pdfbài 5 bảo trì và tối ưu windows bảo trì sự cố máy tính-mastercode.vn
 
Pdfbài 4 ổ cứng hard drive bảo trì sự cố máy tính-mastercode.vn
Pdfbài 4 ổ cứng hard drive   bảo trì sự cố máy tính-mastercode.vnPdfbài 4 ổ cứng hard drive   bảo trì sự cố máy tính-mastercode.vn
Pdfbài 4 ổ cứng hard drive bảo trì sự cố máy tính-mastercode.vn
 
Pdfbài 3 cpu và ram bảo trì sự cố máy tính-mastercode.vn
Pdfbài 3 cpu và ram   bảo trì sự cố máy tính-mastercode.vnPdfbài 3 cpu và ram   bảo trì sự cố máy tính-mastercode.vn
Pdfbài 3 cpu và ram bảo trì sự cố máy tính-mastercode.vn
 
Pdfbài 1 giới thiệu chung về phần cứng bảo trì sự cố máy tính-mastercode.vn
Pdfbài 1 giới thiệu chung về phần cứng   bảo trì sự cố máy tính-mastercode.vnPdfbài 1 giới thiệu chung về phần cứng   bảo trì sự cố máy tính-mastercode.vn
Pdfbài 1 giới thiệu chung về phần cứng bảo trì sự cố máy tính-mastercode.vn
 
Pdfbài 2 bo mạch chủ (main) bảo trì sự cố máy tính-mastercode.vn
Pdfbài 2 bo mạch chủ (main)   bảo trì sự cố máy tính-mastercode.vnPdfbài 2 bo mạch chủ (main)   bảo trì sự cố máy tính-mastercode.vn
Pdfbài 2 bo mạch chủ (main) bảo trì sự cố máy tính-mastercode.vn
 
Pdf bai 7 làm việc với truy vấn nâng cao-slide 07-quan tri csdl voi access-ma...
Pdf bai 7 làm việc với truy vấn nâng cao-slide 07-quan tri csdl voi access-ma...Pdf bai 7 làm việc với truy vấn nâng cao-slide 07-quan tri csdl voi access-ma...
Pdf bai 7 làm việc với truy vấn nâng cao-slide 07-quan tri csdl voi access-ma...
 

Bài 3: Thao tác với dữ liệu SharePoint từ phía client

  • 1. Bài 3: Thao tác với dữ liệu SharePoint từ phía client
  • 2. 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
  • 3. 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
  • 4. 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
  • 5. 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
  • 6. 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ảả
  • 7. 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
  • 8. 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
  • 9. 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
  • 10. 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 14ISAPI Microsoft.SharePoint.Client.dll (281kb) Microsoft.SharePoint.Client.Runtime.dll (145kb) Thao tác dữ liệu SharePoint từ phía Client 10
  • 11. 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); }
  • 12. 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
  • 13. 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
  • 14. 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
  • 15. 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
  • 16. 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
  • 17. 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
  • 18. 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: http://msdn.microsoft.com/en-us/library/ee535729.aspx
  • 19. 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;
  • 20. 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
  • 21. 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 FilesCommon FilesMicrosoft SharedWeb Server Extensions 14TEMPLATELAYOUTSClientBin 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 FilesCommon FilesMicrosoft SharedWeb Server Extensions 14TEMPLATELAYOUTSClientBin Microsoft.SharePoint.Client.Silverlight – 262KB Microsoft.SharePoint.Client.Silverlight.Runtime – 138KB Thao tác dữ liệu SharePoint từ phía Client 21
  • 22. 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
  • 23. 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
  • 24. 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 FilesCommon FilesMicrosoft SharedWeb Server Extensions14TEMPLATELAYOUTS 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 FilesCommon FilesMicrosoft SharedWeb Server Extensions14TEMPLATELAYOUTS 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
  • 25. 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();
  • 26. Thủ tục nhận dữ liệu từ phía Client Tải tại chỗ sử dụng Load() để trả về đối tượng, tập đối tượng hay dữ liệu Tải qua truy vấn sử dụng LoadQuery() để trả về một enumerable collection của các đối tượng this.collList = oWebsite.get_lists(); //Thực hiện tải lists về clientContext.load(collList); Tải tại chỗ sử dụng Load() để trả về đối tượng, tập đối tượng hay dữ liệu Tải qua truy vấn sử dụng LoadQuery() để trả về một enumerable collection của các đối tượng Thao tác dữ liệu SharePoint từ phía Client 26 var collList = oWebsite.get_lists(); //Thực hiện tải lists về trong đó có lọc thuộc tính lấy về this.listInfoCollection = clientContext.loadQuery(collList, 'Include(Title, Id)');
  • 27. Thủ tục nhận dữ liệu từ phía Client Thực thi truy vấn bằng việc gọi phương thức ExecuteQuery: trong .NET API hay Silverlight API Thực thi truy vấn bằng việc gọi phương thức ExecuteQueryAsync: trong JavaScrip API hoặc Silverlight API clientContext.Load(oWebsite); //Thực thi truy vấn clientContext.ExecuteQuery(); Thực thi truy vấn bằng việc gọi phương thức ExecuteQuery: trong .NET API hay Silverlight API Thực thi truy vấn bằng việc gọi phương thức ExecuteQueryAsync: trong JavaScrip API hoặc Silverlight API Thao tác dữ liệu SharePoint từ phía Client 27 clientContext.executeQueryAsync( Function.createDelegate(this, this.onQuerySucceeded), Function.createDelegate(this, this.onQueryFailed)); } function onQuerySucceeded(sender, args) {…} function onQueryFailed(sender, args) {…}
  • 28. Nhận các đối tượng từ phía Client JavaScript API function retrieveWebSite() { var clientContext = new SP.ClientContext('/sites/MySiteCollection'); var oWebsite = clientContext.get_web(); var collList = oWebsite.get_lists(); this.oList = collList.getByTitle('Announcements'); clientContext.load(oList); clientContext.executeQueryAsync( Function.createDelegate(this, this.onQuerySucceeded), Function.createDelegate(this, this.onQueryFailed)); } Thao tác dữ liệu SharePoint từ phía Client 28 function retrieveWebSite() { var clientContext = new SP.ClientContext('/sites/MySiteCollection'); var oWebsite = clientContext.get_web(); var collList = oWebsite.get_lists(); this.oList = collList.getByTitle('Announcements'); clientContext.load(oList); clientContext.executeQueryAsync( Function.createDelegate(this, this.onQuerySucceeded), Function.createDelegate(this, this.onQueryFailed)); }
  • 29. Nhận các đối tượng từ phía Client .NET API ClientContext clientContext = new ClientContext("http://MyServer/"); Web oWebsite = clientContext.Web; ListCollection collList = oWebsite.Lists; List oList = collList.GetByTitle("Announcements"); clientContext.Load(oList); clientContext.ExecuteQuery(); Console.WriteLine("Title: {0} Created: {1}", oList.Title, oList.Created); Thao tác dữ liệu SharePoint từ phía Client 29 ClientContext clientContext = new ClientContext("http://MyServer/"); Web oWebsite = clientContext.Web; ListCollection collList = oWebsite.Lists; List oList = collList.GetByTitle("Announcements"); clientContext.Load(oList); clientContext.ExecuteQuery(); Console.WriteLine("Title: {0} Created: {1}", oList.Title, oList.Created);
  • 30. Chuỗi truy vấn trong JavaScript OM JavaScript Client OM không hỗ trợ truy vấn LINQ JavaScript sử dụng biểu thức chuỗi (string expression) để truy vấn Cú pháp đối với một list: Cú pháp đối với list collection: clientContext.load(oList, 'Title' ,'Id'); JavaScript Client OM không hỗ trợ truy vấn LINQ JavaScript sử dụng biểu thức chuỗi (string expression) để truy vấn Cú pháp đối với một list: Cú pháp đối với list collection: Thao tác dữ liệu SharePoint từ phía Client 30 myListArray = clientContext.loadQuery(collList, 'Include(Title,Fields.Include(Title,Description))'); Tham khảo: http://msdn.microsoft.com/en-us/library/ee539350.aspx
  • 31. Cập nhật đối tượng Để cập nhận đối tượng sử dụng Client OM, gọi phương thức Update cho cả .NET và JavaScript OM. .NET Client OM JavaScript Client OM List oList = collList.GetByTitle("My List"); oList.Description = "Changed description..."; oList.Update(); Để cập nhận đối tượng sử dụng Client OM, gọi phương thức Update cho cả .NET và JavaScript OM. .NET Client OM JavaScript Client OM Thao tác dữ liệu SharePoint từ phía Client 31 Tham khảo: http://msdn.microsoft.com/en-us/library/ee539350.aspx List oList = collList.GetByTitle("My List"); oList.Description = "Changed description..."; oList.Update(); this.oList = collList.getByTitle('My List'); oList.set_title('Changed description...'); oList.update();
  • 32. Thủ tục nhận một List Items Để nhận về danh sách các Item trong một List, thông thường chúng ta sử dụng CAML để chỉ ra các Item nào sẽ nằm trong giá trị trả về Việc lấy về danh sách các Item trong list được thực hiện thông qua hai bước Khi báo truy vấn CAML Gửi truy vấn này vào phương thức GetItems Để nhận về danh sách các Item trong một List, thông thường chúng ta sử dụng CAML để chỉ ra các Item nào sẽ nằm trong giá trị trả về Việc lấy về danh sách các Item trong list được thực hiện thông qua hai bước Khi báo truy vấn CAML Gửi truy vấn này vào phương thức GetItems Thao tác dữ liệu SharePoint từ phía Client 32 Truy vấn CAML: http://msdn.microsoft.com/en-us/library/ms462365.aspx
  • 33. VD: Thủ tục nhận một List Item .NET Client OM JavaScript Client OM CamlQuery camlQuery = new CamlQuery(); camlQuery.ViewXml = "<View><Query><Where><Leq>" + "<FieldRef Name='ID'/><Value Type='Number'>100</Value>" + "</Leq></Where></Query><RowLimit>50</RowLimit></View>"; ListItemCollection collListItem = oList.GetItems(camlQuery); .NET Client OM JavaScript Client OM Thao tác dữ liệu SharePoint từ phía Client 33 var camlQuery = new SP.CamlQuery(); camlQuery.set_viewXml('<View><Query><Where><Leq>' + '<FieldRef Name='ID'/><Value Type='Number'>100</Value>' + '</Leq></Where></Query><RowLimit>50</RowLimit></View>'); this.collListItem = oList.getItems(camlQuery);
  • 34. Demo Demo: Sử dụng JavaScript để truy vấn dữ liệu SharePoint Thao tác dữ liệu SharePoint từ phía Client 34
  • 35. Liên kết thực hành Công việc thông thường How to: Work with Websites How to: Retrieve Lists How to: Create, Update, and Delete Lists How to: Retrieve List Items How to: Create, Update, and Delete List Items How to: Work with Users and Groups How to: Work with Roles How to: Break Role Assignment Inheritance How to: Work with User Custom Actions How to: Work with Web Parts on a Page Công việc nâng cao How to: Use Conditional Scope How to: Use Exception Handling Scope Code Sample: Silverlight List Viewer Công việc thông thường How to: Work with Websites How to: Retrieve Lists How to: Create, Update, and Delete Lists How to: Retrieve List Items How to: Create, Update, and Delete List Items How to: Work with Users and Groups How to: Work with Roles How to: Break Role Assignment Inheritance How to: Work with User Custom Actions How to: Work with Web Parts on a Page Công việc nâng cao How to: Use Conditional Scope How to: Use Exception Handling Scope Code Sample: Silverlight List Viewer Thao tác dữ liệu SharePoint từ phía Client 35
  • 36. Tổng kết bài học SharePoint cung cấp các thư viện để làm việc với dữ liệu từ phía clients Các thư viện này phù hợp với từng loại ứng dụng khác nhau .NET CLR: các ứng dụng desktop,… Silverligth: các ứng dụng nền Silverlight ECMAScript: các ứng dụng web, với JavaScript SharePoint cung cấp các thư viện để làm việc với dữ liệu từ phía clients Các thư viện này phù hợp với từng loại ứng dụng khác nhau .NET CLR: các ứng dụng desktop,… Silverligth: các ứng dụng nền Silverlight ECMAScript: các ứng dụng web, với JavaScript Thao tác dữ liệu SharePoint từ phía Client 36
  • 37. Danh sách tham khảo http://msdn.microsoft.com/en-us/library/ee539350.aspx http://msdn.microsoft.com/en-us/library/hh185009.aspx http://msdn.microsoft.com/en-us/library/ee539350.aspx Thao tác dữ liệu SharePoint từ phía Client 37