Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 29 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
29
Dung lượng
368,98 KB
Nội dung
WINDOWS
COMMUNICATION
FOUNDATION
Khoa Công nghệ Thông tin
Ths. Nguyễn Văn Lót
Wednesday, March 21, 2012
1
WINDOWS COMMUNICATIONFOUNDATION - WCF
GIỚI THIỆU
Đƣợc giới thiệu ở .NET 3
WCF cung cấp mô hình lập trình đơn giản, thống
nhất và có thể mở rộng và có thể tƣơng tác với các
công nghệ phân tán khác: DCOM, .NET
Remoting, XML web service, Sockets, P2P,…
Tích hợp các công nghệ phân tán vào trong API
với namespace System.ServiceModel
Cung cấp các công nghệ khác nhau để ngƣời sử
dụng service có thể sử dụng dễ dàng. Ví dụ WCF
có thể cung cấp service làm việc với giao thức TCP
hoặc sử dụng XML web service
Wednesday, March 21, 2012
2
WCF
CÁC NÉT ĐẶC TRƢNG
Hỗ trợ “strongly typed” định dạng cũng nhƣ
“untyped” messages.
Cho phép ứng dụng .net chia sẽ kiểu dữ liệu hiệu
quả giữa các nền (ví dụ J2EE)
Hỗ trợ nhiều binding ( HTTP, TCP, MSMQ,
named pipes) cho phép chọn loại thích hợp để
truyền tải dữ liệu
Hỗ trợ các web service chuyên biệt gần nhất (WS-
Policy, WS-Security, WS-Trust,…)
Tích hợp đầy đủ mô hình anh ninh và các kỹ thuật
an ninh
Hỗ trợ session cũng nhƣ hỗ trợ one-way message
Wednesday, March 21, 2012
3
KIẾN TRÚC CỦA WCF
Wednesday, March 21, 2012
4
CÁC THÀNH PHẦN CƠ BẢN CỦA ỨNG DỤNG WCF
The WCF Service assembly: *.dll chứa đựng các
class và interface trình bày các chức năng
(functions) để ngƣời khác có thể gọi
The WCF Service host: host WCF Service
assembly
The WCF client: đây là một application truy xuất
các chức năng của service qua proxy
Wednesday, March 21, 2012
5
ABCS CỦA WCF
Host và client trao đổi với nhau thông qua ABCs
(address, binding, contact)
Address: Xác định vị trí của service
Binding: chỉ định kênh trao đổi thông tin
Contract: mô tả các phƣơng thức của service
Wednesday, March 21, 2012
6
WCF CONTRACT
Là key để xây dựng WCF service. Nó giúp mô tả
service, kiểu dữ liệu và các hàm của service
[ServiceContract]: mô tả interface của service
[OperationContract]: mô tả hàm/thủ tục của
service
[DataContract]: mô tả kiểu dữ liệu mới của service
Wednesday, March 21, 2012
7
[ServiceContract]
public interface IService1
{
[OperationContract]
string GetData(int value);
[OperationContract]
CompositeType GetDataUsingDataContract(CompositeType
composite);
}
[DataContract]
public class CompositeType
{
bool boolValue = true;
string stringValue = "Hello ";
…….
WCF BINDING
Binding là đối tƣợng đƣợc sử dụng để chỉ định chi
tiết trao đổi dữ liệu đƣợc yêu cầu để nối kết đến
endpoint của WCF
Binding có thể chứa các thông tin cơ bản sau:
Protocol: Xác định bộ máy mã bảo mật
đƣợc sử dụng
Encoding: xác định mã hoá
thông tin: text, binary
Transport: xác định giao thức
truyền dữ liệu: tcp, http,…
Wednesday, March 21, 2012
8
WCF BINDING
Một số wcf binding hệ thống thƣờng dùng
HTTP-Based Bindings
BasicHttpBinding: Đƣợc sử dụng để xây dựng WS-Basic
Profile (WS-I Basic Profile 1.1). Binding này sử dụng HTTP
nhƣ phƣơng tiện vận chuyển và Text/XML nhƣ mã hoá
message mặc định
WSHttpBinding: Tƣơng tự BasicHttpBinding, nhƣng cung
cấp nhiều tính năng web service: cung cấp giao dịch
(transaction), thông tin tin cậy (reliable) và WS-Address
TCP-Based Bindings
NetNamedPipeBinding:Một Binding an ninh, tin cậy cho
việc trao đổi trên cùng máy giữa các ứng dụng .NET
MSMQ-Based Bindings
NetMsmqBinding: Binding hàng đợi (queued) thích hợp cho
trao đổi giữa các máy giữa các ứng dụng .NET
Wednesday, March 21, 2012
9
WCF ADDRESS
WCF Address giúp xác định endpoint và chỉ cho
các customer của service địa chỉ của nó
Address có các thông tin cơ bản sau:
Scheme: giao thức vận chuyển. Ex. http, tcp, msmq
MachineName: Tên domain của máy
Port: Cổng đƣợc sử dụng. Ví dụ port 80 cho http
binding
Path: đƣờng dẫn đến WCF Service
Wednesday, March 21, 2012
10
Scheme://<machineName>[:Port]/Path
http://localhost:8080/MyWCFService
net.tcp://localhost:8080/MyWCFService
net.msmq://localhost:8080/MyWCFService
. WINDOWS COMMUNICATION FOUNDATION Khoa Công nghệ Thông tin Ths. Nguyễn Văn Lót Wednesday, March 21, 2012 1 WINDOWS COMMUNICATION FOUNDATION - WCF GIỚI THIỆU Đƣợc