WinCE平台与数据库服务器通过web service进行数据通讯

                   1:终端设备可以通过gprs,3g或者是wifi连接到网络当中。

            2:写好服务器端程序,定以后服务器端需要终端调用来实现的函数。

            3:建立一个智能设备应用程序,添加Web引用。


      服务器代码:

private SqlConnection Conn;
 
 private string ConnString = "Data Source=(local);Initial Catalog=Northwind;uid=sa;pwd=sa;";
 
dataConnection#region dataConnection
 
        private DataSet GetNorthwindDataSet()
 
        {
 
            return ExecuteSql("select * from Employees");
 
        }
 
        private DataSet ExecuteSql(string mysql)
 
        {
 
            DataSet dataSet = new DataSet();
 
            SqlDataAdapter adapter = new SqlDataAdapter(mysql, this.Conn);
 
            try
 
            {
 
                if (this.Conn.State == ConnectionState.Closed)
 
                {
 
                    this.Conn.Open();
 
                }
 
                adapter.Fill(dataSet, "table");
 
            }
 
            catch (Exception exception)
 
            {
 
                HttpContext.Current.Response.Write(exception.Message);
 
                HttpContext.Current.Response.End();
 
            }
 
            finally
 
            {
 
                if ((this.Conn != null) && (this.Conn.State == ConnectionState.Open))
 
                {
 
                    this.Conn.Close();
 
                }
 
                adapter.Dispose();
 
            }
 
            return dataSet;
 
        }
 
        #endregion
 
 //方法一:直接返回 DataSet 对象
 
        [WebMethod(Description = "直接返回 DataSet 对象。")]
 
        public DataSet GetDataSet()
 
        {
 
            DataSet dataSet = GetNorthwindDataSet();
 
            return dataSet;
 
        }





终端代码:

private webSer.Service1 ws;
 
       private void FrmMain_Load(object sender, EventArgs e)
 
       {
 
           ws = new DeviceApplication1.webSer.Service1();
 
       }
 
       //webmethod直接返回dataset
 
       private void btnDataSet_Click(object sender, EventArgs e)
 
       {
 
           try
 
           {
 
               this.dtGrid.DataSource = null;
 
               DateTime dtBegin = DateTime.Now;
 
               DataSet ds = ws.GetDataSet();
 
               DateTime dtDown = DateTime.Now;
 
               this.dtGrid.DataSource = ds.Tables[0];
 
               MessageBox.Show(string.Format("下载耗时:{0},绑定数据耗时:{1},数据量:{2}", 
 
                   dtDown - dtBegin, DateTime.Now - dtDown, ds.GetXml().Length));
 
           }
 
           catch (Exception ex)
 
           {
 
               MessageBox.Show(ex.ToString());
 
           }
 
       }

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值