我有一个安装了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数据库。
我怎么能这样做?
答案 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身份验证。