1. Trang chủ
  2. » Công Nghệ Thông Tin

Bài viết về webservice

5 151 0
Tài liệu đã được kiểm tra trùng lặp

Đang tải... (xem toàn văn)

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 5
Dung lượng 69,5 KB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

Bài viết về webservice

Trang 1

Lập trình

Bài viết này mình sẽ hướng dẫn các bạn làm thế nào để tạo một Webservice và cách sử dụng một webservice đã có ở trên máy local và ở trên mạng

Trang 2

Trước hết, ta cần khởi tạo một ứng dụng webservice Đây là một ứng dụng để kiểm tra tỉ giá ngoại tệ và update các loại tỉ giá đó CSDL là sql server 2000 gồm có 2 bảng có đính kèm luôn trong ứng dụng

Ta tạo một webservice có tên là GetExchangeRateService có nội dung như sau:

[WebMethod]

public string GetExchangeRate(string currency1, string currency2)

{

SqlConnection con = new

SqlConnection("Server=(local);Database=AptechBankDB;UID=sa;PWD=sa");

con.Open();

DataSet ds = new DataSet();

SqlCommand cmd = new SqlCommand("pr_GetExchangeRate", con);

cmd.CommandType = CommandType.StoredProcedure;

cmd.Parameters.Add(new SqlParameter("@Currency1",SqlDbType.VarChar)); cmd.Parameters.Add(new SqlParameter("@Currency2", SqlDbType.VarChar)); cmd.Parameters["@Currency1"].Value = currency1;

cmd.Parameters["@Currency2"].Value = currency2;

SqlDataAdapter da = new SqlDataAdapter(cmd);

da.Fill(ds);

if (ds.Tables[0].Rows.Count > 0)

{

return ds.Tables[0].Rows[0]["Rate"].ToString();

}

else

{

return "0";

}

}

Phương thức này có 2 tham số: tham số thứ 1 là ngoại tệ quy đổi, tham số thứ 2 là tiền quy đổi Giá trị trả về là tỉ giá của 2 loại tiền tệ đó

Ta tạo websivice thứ 2 có tên là: UpdateExchangeRateService

[WebMethod]

public bool UpdateExchangeRate(string currency1, string currency2, float rate, string email, string pass)

Trang 3

{

SqlConnection con = new

SqlConnection("Server=(local);Database=AptechBankDB;UID=sa;PWD=sa");

con.Open();

DataSet ds = new DataSet();

SqlCommand cmd = new SqlCommand("pr_Check", con);

cmd.CommandType = CommandType.StoredProcedure;

cmd.Parameters.Add(new SqlParameter("@Email", SqlDbType.VarChar)); cmd.Parameters.Add(new SqlParameter("@Password", SqlDbType.VarChar)); cmd.Parameters["@Email"].Value = email;

cmd.Parameters["@Password"].Value = pass;

SqlDataAdapter da = new SqlDataAdapter(cmd);

da.Fill(ds);

if (ds.Tables[0].Rows.Count > 0)

{

SqlCommand cmdUpd = new SqlCommand("pr_UpdateExchangeRate", con); cmdUpd.CommandType = CommandType.StoredProcedure;

cmdUpd.Parameters.Add(new SqlParameter("@Currency1",

SqlDbType.VarChar));

cmdUpd.Parameters.Add(new SqlParameter("@Currency2",

SqlDbType.VarChar));

cmdUpd.Parameters.Add(new SqlParameter("@Rate", SqlDbType.Float)); cmdUpd.Parameters["@Currency1"].Value = currency1;

cmdUpd.Parameters["@Currency2"].Value = currency2;

cmdUpd.Parameters["@Rate"].Value = rate;

int i = cmdUpd.ExecuteNonQuery();

if (i > 0)

{

return true;

}

else

{

return false;

}

}

else

Trang 4

{

return false;

}

}

Phương thức này có 5 tham số 2 tham số đầu tiên là các tỉ giá ngoại tệ để update, rate ở đây là tỉ lệ giữa các ngoại tệ đó

Còn 2 tham số thứ 4 và 5 dùng để kiểm tra sự hợp pháp của quyền admin

Tiếp theo, ta xây dựng một giao diện website để sử dụng các webservice mà mình vừa tạo Chú ý ta phải add Web Reference vào website này Đối với VS 2005, có 2 cách để chèn vào, đó là sử dụng luôn webservice mình tạo trong cùng một solution, thứ 2 là webservice ở trên local, tức là mình phải đặt service đó trong IIS hoặc chọn nò là websharing

Với việc kiểm tra tỉ giá ngoại tệ, ta chỉ cần dùng dòng lệnh sau:

localhost.GetExchangeRateService getEx = new localhost.GetExchangeRateService(); lblResults.Text = getEx.GetExchangeRate(txtCurrency1.Text, txtCurrency2.Text);

Tương tự như trên, ta làm phần update tỉ giá:

localhost.UpdateExchangeRateService up = new

localhost.UpdateExchangeRateService();

bool isTrue = up.UpdateExchangeRate(txtCurrency1.Text, txtCurrency2.Text, float.Parse(txtRate.Text), txtEmail.Text, txtPass.Text);

Trang 5

if (isTrue)

{

lblResults.Text = "Update Successful!";

}

else

{

lblResults.Text = "Update fail!";

}

Trên đây là một ứng dụng nhỏ về xây dựng một webservice

Ngày đăng: 16/03/2014, 22:02

TỪ KHÓA LIÊN QUAN

w