服务端如何返回DataSet类型
winform程序,目前遇到的问题是这样的
我有一个服务器和一个客户机,服务器负责数据库的查询,客户发送查询字符串和接受服务器返回的结果
但是我想知道如果我需要的是一个dataset类型的返回结果,服务器用什么方法才能把这样的结果返回过来
用的是TCP连接,我目前只能让服务器返回string类型的结果
求大神指导
[解决办法]
把dataset的数据序列化,然后进行传输
[解决办法]
dataset以流的方式写成xml,然后生成xml的字符串传给客户端
客户端根据xml字符串在生成dataset
DataSet.WriteXml(...);
DataSet.ReadXml(...);
[解决办法]
写的示例如下:收到后转成 DataSet 是 ds.ReadXml
private void button1_Click(object sender, EventArgs e)
{
DataSet ds;
TcpClient tc;
//// 获取 ds 和连接 tc
WriteDataSet(ds, tc.GetStream());
}
private void WriteDataSet(DataSet ds, NetworkStream stream)
{
ds.WriteXml(stream, XmlWriteMode.WriteSchema);
}
FileStream fs = new FileStream(@"c:\1.xml", FileMode.Create);
int b;
while ((b = tc.GetStream().ReadByte()) != -1)
{
fs.WriteByte((byte)b);
}
fs.Close();