Yêu cầu mọi thông tin sao chép từ blog này phải được ghi rõ đầy đủ: Thông tin được sao chép từ "http://www.dangngochoangthanh.blogspot.com".

Cool wallpaper http://www.fancymessage.com

EMOJI KEYBOARD PRO http://emojiselector.com

THƯ VIỆN HÌNH ĐỘNG FLASH ANIMATION: http://flashanimationlibrary.blogspot.ru/

Hệ thống học trực tuyến đang được phát triển và sẽ đưa vào sử dụng vào cuối năm nay. Hãy xem qua một số demo của Học Trực Tuyến.


HỌC TRỰC TUYẾN ĐÃ CUNG CẤP PHIÊN BẢN TRUY CẬP QUA MOBILE http://dangngochoangthanh.blogspot.com/?m=1

XEM KÊNH HỌC TRỰC TUYẾN TRÊN YOUTUBE



Search on This Blog

Thursday, December 29, 2011

THAO TÁC DỮ LIỆU TRONG ASP.NET BẰNG WEB SERVICE

1. Tạo một dự án ASP.NET EMPTY WEB APPLICATION
2. Bổ sung một Item là WebForm, đặt tên là Default.aspx
3. Bổ sung một Item là Web service


Giả sử, ta đặt tên cho nó là MyWebService.asmx.
4. Mặt định, file MyWebService.asmx.cs có dạng như sau:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.Services;

namespace MyWebServices
{
    /// 
    /// Summary description for MyWebService
    /// 
    [WebService(Namespace = "http://tempuri.org/")]
    [WebServiceBinding(ConformsTo = WsiProfiles.BasicProfile1_1)]
    [System.ComponentModel.ToolboxItem(false)]
    // To allow this Web Service to be called from script, using ASP.NET AJAX, uncomment the following line. 
    // [System.Web.Script.Services.ScriptService]
    public class MyWebService : System.Web.Services.WebService
    {

        [WebMethod]
        public string HelloWorld()
        {
            return "Hello World";
        }
    }
}
5. Tạo mới một lớp MyConnection
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Data.SqlClient;

namespace MyWebServices
{
    public class MyConnection
    {
        private SqlConnection con;
        private SqlCommand command;

        public MyConnection()
        {
            con = new SqlConnection();
            con.ConnectionString = "Data Source=localhost;Initial Catalog=DoAnVB;Persist Security Info=True;User ID=sa;Password=123";
            command = new SqlCommand();
            command.Connection = con;
            con.Open();
        }

        public SqlDataReader ExecMyQuery(string s)
        {
            command.CommandType = System.Data.CommandType.Text;
            command.CommandText = s;
            return command.ExecuteReader();
        }
    }
}
Cần lưu ý chỉnh lại connectionstring cho phù hợp. Database có tên là DoAnVB, trong đó có một bảng tbl_Khoa(idKhoa int, tenkhoa nvarchar(50)).
6. Xóa phương thức Hello World trong MyWebService.asmx.cs và bổ sung thêm hai phương thức mới:
[WebMethod]
        public SqlDataReader GetAllKhoa()
        {
            return (new MyConnection()).ExecMyQuery("select * from tbl_khoa;");
        }

        [WebMethod]
        public void InsertToKhoa(string tenkhoa)
        {
            (new MyConnection()).ExecMyQuery("insert into tbl_khoa(tenkhoa) values(N'" + tenkhoa + "')");
        }
7. Thiết kế trang Default.aspx như sau:
Lưu ý: Tất cả nội dung này được đặt trong một UpdatePanel và có sử dụng ScriptManager. Trong trang asp.net này, ngoài hai thành phần nói trên, còn có: textbox (tên là txtKhoa); button (tên btKhoa) và một Gridview (tên là dgvData).
8. Bổ sung phương thức sau vào trong Default.aspx.cs
private void UpdatePage()
        {
            MyWebService ws = new MyWebService();
            SqlDataReader reader = ws.GetAllKhoa();
            dgvData.DataSource = reader;
            dgvData.DataBind();
        }
9. Bổ sung đoạn mã sau cho sự kiện Page_Load
protected void Page_Load(object sender, EventArgs e)
        {
            UpdatePage();
        }
10. Bổ sung đoạn mã sau cho sự kiện Click của button
protected void btKhoa_Click(object sender, EventArgs e)
        {
            MyWebService ws = new MyWebService();
            ws.InsertToKhoa(txtKhoa.Text);
            UpdatePage();
        }

Cuối cùng, test thử chương trình làm việc với Database thông qua web service.

No comments:

Post a Comment