478
Chương 12: Dịch vụ Web XML và Remoting
<configuration>
<appSettings>
<add key="AppName.ServerName.ServiceName"
value="http://localhost/WebServices/MyService.asmx"/>
</appSettings>
</configuration>
Bạn cũng có thể sử dụng địa chỉ URL động do công cụ Wsdl.exe sinh ra. Trong trường hợp
này, bạn sử dụng đối số
/appsettingurlkey
để cho biết tên của thiết lập cấu hình mà URL sẽ
được lưu trữ ở đó. Bạn phải tạo file cấu hình bằng tay.
wsdl /out:Proxy.cs http://localhost/WebServices/MyService.asmx?WSDL
/appsettingurlkey:MyService
Trong cả hai trường hợp, mã lệnh của lớp proxy sẽ được sửa đổi để đọc địa chỉ URL từ file
cấu hình. Nếu không tìm thấy giá trị cần thiết, nó sẽ mặc định sử dụng địa chỉ URL được sử
dụng trong quá trình phát triển ứng dụng. Cách tiếp cận này cho phép bạn đổi địa chỉ URL của
dịch vụ Web XML sau khi đã biên dịch và triển khai ứng dụng (chỉ cần thay đổi file cấu hình).
2.
2.
S d ng k thu t response-caching trong d ch v Web
ử ụ
ỹ
ậ
ị
ụ
S d ng k thu t response-caching trong d ch v Web
ử ụ
ỹ
ậ
ị
ụ
XML
XML
Bạn muốn nâng cao hiệu năng của dịch vụ Web XML bằng cách lưu trữ
giá trị
trả về của một phương thức web.
Sử dụng response-caching bằng cách thiết lập thuộc tính
CacheDuration
của đặc
tính
System.Web.Services.WebMethod
.
Trong ASP.NET, dịch vụ Web XML hỗ trợ response-caching giống hệt như các trang web
ASP.NET. Khi response-caching được kích hoạt, mã lệnh của bạn chỉ thực hiện một lần, và giá
trị trả về của phương thức web sẽ được lưu lại và được trả về trong các lần gọi tiếp theo. Đối
với Web Form, caching được thực hiện cho từng form. Đối với dịch vụ Web XML, caching
được kích hoạt và cấu hình riêng cho mỗi phương thức web.
Ví dụ, phương thức web dưới đây trả về giá trị ngày giờ hiện hành trên máy server. Thông tin
này được lưu lại trong một phút, nghĩa là các lời yêu cầu tiếp theo trong khoảng thời gian này
sẽ nhận lại thông tin đã được lưu trước đó.
Using System;
using System.Web.Services;
public class ResponseCaching {
[WebMethod(CacheDuration=60)]