从windows ce通过网络连接到pc上托管的sql server数据库

时间:2013-05-28 11:17:52

标签: c# sql-server-ce windows-ce smart-device

我有一个安装了Windows CE 5的智能设备。我想编写一个c#程序,以便它安装在智能设备上并可以与外部数据库通信,该数据库是SQL Server Standard或Enterprise Edition(非Compact Edition)并托管在PC上。设备与PC之间的通信是通过LAN建立的。

所以,我不能使用System.Data.SqlClient命名空间和它的类,因为这个名称空间和它的类在Windows CE中不识别。我也不能使用System.Data.SqlServerCe命名空间和它的类,因为我想连接到外部企业SQL Server数据库,这不是SQL CE数据库。

我怎么能这样做?

1 个答案:

答案 0 :(得分:2)

你可以使用这种方法来做到这一点:

1 - 在服务器上开发Web服务,在其中定义Web方法(作为您的应用程序需要)以处理数据库,例如

[WebMethod]
    public void ExecuteSql(string query)
    {
       SqlCommand cmd  = new SqlCommand();
       cmd.Connection = new SqlConnection("connectionstring");
       cmd.CommandType = CommandType.Text;
       cmd.CommandText = query;
       cmd.Connection.Open();
       cmd.ExecuteScalar();
       cmd.Connection.Close();
    }

2-在您的Windows CE应用程序中引用此Web服务。

然后,您可以调用Web服务方法,然后发送和检索数据。

注意:Web服务处理SQL混合身份验证而不是Windows身份验证。