Bài giảng Hệ quản trị cơ sở dữ liệu II: Tạo Web Service do Phan Hiền biên soạn sau đây trang bị cho các bạn những kiến thức về kiến trúc Web Service; cách tạo Web Service - SQL Server; sử dụng Web Service bên C sharp; tạo Web Service trong .NET.
Trang 1HỆ QUẢN TRỊ
CƠ SỞ DỮ LIỆU II
Phan Hiền
TẠO WEB SERVICE
Trang 2KIẾN TRÚC WEB SERVICE
Host (IIS) hay Host
mã nguồn mở
Web Service (do SQL hay ngôn ngữ lập trình khác tạo ra)
Đăng ký thông tin
hình thức
Ứng
dụng
trên môi
trường
Windows
hay
WebSite
Yêu cầu
Nhận kết quả
Trả kết quả
Nội dung Hình thức
Web Service broker Web Service producer
Trang 3TẠO WEB SERVICE – SQL SERVER
Tạo hàm chức năng trong SQL Server
create function tongsohoadon_kh
(@makhach char(5)) returns int as
begin
declare @x int
select @x = count(*) from hoadon
where makhach = @makhach return @x
end
Trang 4TẠO WEB SERVICE – SQL SERVER
Tạo EndPoint
CREATE ENDPOINT tongsohoadon_kh_ep
STATE = STARTED
AS HTTP(
PATH = '/tongsohoadon_kh',
AUTHENTICATION = (INTEGRATED),
PORTS = ( CLEAR ), SITE = 'phvn'
)
FOR SOAP (
WEBMETHOD 'tongsohoadon_kh'
(name='vidu.dbo.tongsohoadon_kh',SCHEMA=STANDARD),
WSDL = DEFAULT, SCHEMA = STANDARD,
DATABASE = 'vidu', NAMESPACE = 'http://phvn‟
);
Trang 5TẠO WEB SERVICE – SQL SERVER
Tạo định danh mạng
sp_reserve_http_namespace
N„http://phvn:80/tongsohoadon_kh‟
Xoá định danh
sp_delete_http_namespace_reservation
N„http://phvn:80/tongsohoadon_kh‟
Xoá EndPoint
DROP ENDPOINT tongsohoadon_kh_ep
Tạo WSDL
http://phvn:80/tongsohoadon_kh?wsdl
Trang 6SỬ DỤNG WEB SERVICE BÊN C SHARP
Tạo một dự án mới
Chọn thêm tham chiếu (Add Service Reference)
Chọn phần Advanced
Chọn phần Add Web Reference
Điền địa chỉ http chỉ đến file *.wsdl
(http://phvn:80/tongsohoadon_kh?wsdl)
Điền tên định danh để dùng WebService
(tongsohoadon_kh_ep)
Chọn Add Reference
Trang 7SỬ DỤNG WEB SERVICE BÊN C SHARP
string s = textBox1.Text.Trim();
chucnang.tongsohoadon_kh_ep cn =
new chucnang.tongsohoadon_kh_ep();
cn.Credentials = new System.Net.NetworkCredential
(“tên đăng nhập mạng", “mật khẩu");
// Tên đăng nhập mạng vào nơi chứa nội dung WebService
int x = (int)cn.tongsohoadon_kh(s);
MessageBox.Show(x.ToString());
Trang 8TẠO WEB SERVICE – TRONG .NET
Tạo project Web Service Application
Thay đổi tên tuỳ ý (ví dụ : „chucnang‟)
Viết nội dung lệnh vào hàm, cần có thẻ [WebMethod]
để cho phép đăng ký Broker và cho phép Remote
Tạo thư mục ảo cho IIS (giả sử có tên myws)
Publish project lên thư mục ảo đó
Mở “taptin.asmx” và thay đổi tên theo tên mà đã đặt
Địa chỉ cung cấp tập tin WSDL (từ host tên : phvn)
http://phvn/myws/chucnang.asmx?wsdl
Trang 9SỬ DỤNG
Tạo project Windows Application
Add Service Referrence, chọn Advance, Add Web Referrence, nhập vào đường dẫn sinh WSDL
Sử dụng các hàm của WebService như thư viện hàm
Nếu có yêu cầu về quyền hạn sử dụng, ta thêm lệnh: WebServiceObject.Credentials = new
System.Net.NetworkCredential
(“ten_user”,”mat_khau”);