C# 使用wcf服务获取xml格式的数据库数据
请检查我下面的代码C# 使用wcf服务获取xml格式的数据库数据,c#,mysql,wcf,C#,Mysql,Wcf,请检查我下面的代码 [ServiceContract] public interface IService1 { [OperationContract] System.Xml.XmlDocumentGetData(int userId); } public MySqlConnectionStringBuilder Sbu = new MySqlConnectionStringBuilder(); public static DataTable dt = new Data
[ServiceContract]
public interface IService1
{
[OperationContract]
System.Xml.XmlDocumentGetData(int userId);
}
public MySqlConnectionStringBuilder Sbu = new MySqlConnectionStringBuilder();
public static DataTable dt = new DataTable();
public static DataSet myDataSet = new DataSet();
public XmlDocument GetData(int userId)
{
MySqlConnection con = new MySqlConnection()
String Query = "select * from user_master where UserID = "+userId;
MySqlDataAdapter adapter =new MySqlDataAdapter();
adapter.SelectCommand =new MySqlCommand(Query,con);
adapter.Fill(dt);
myDataSet.Tables.Add(dt);
string xmlStr = "";
XmlDocument xmlDoc = new XmlDocument();
xmlStr = myDataSet.GetXml();
xmlDoc.LoadXml(xmlStr);
return xmlDoc;
}
发生异常:
接收对localhost的HTTP响应时出错。这可能是由于服务端点绑定未使用HTTP协议造成的。这也可能是由于服务器中止了HTTP请求上下文(可能是由于服务关闭)。有关详细信息,请参阅服务器日志
通过客户端消费
ServiceProxy.Service1Client client = new ServiceProxy.Service1Client();
client.GetData(Convert.ToInt32(txtUserID.Text));
为什么要返回一个XmlDocument而不仅仅是一个包含XML的字符串?坦白地说,我认为这是行不通的。好的,谢谢。请给我举个例子或建议,在这里做什么?只需将函数结果类型更改为
string
,并将xmlStr
作为函数结果返回,而不是将其加载到XmlDocument
。一个mpre异常“DataTable已属于此数据集。”这里是myDataSet.Tables.Add(dt);然后在方法中创建数据集
,而不是作为全局字段。