Asp.net 适用于Windows Phone和网站的API(服务)
我(在最后一个阶段)创建了一个需要数据库通信的ASP.NET网站,所以我们创建了WCF服务来连接数据库。如果有Select语句,这些服务将返回DataTable 服务很好,网站也很好 在创建API时,我不知道windows phone sdk不支持数据表 我读了一些关于Windows Phone SDK不支持DataTable的文章,在我的Visual Studio中检查了Asp.net 适用于Windows Phone和网站的API(服务),asp.net,wcf,web-services,windows-phone-7,windows-phone-7.1,Asp.net,Wcf,Web Services,Windows Phone 7,Windows Phone 7.1,我(在最后一个阶段)创建了一个需要数据库通信的ASP.NET网站,所以我们创建了WCF服务来连接数据库。如果有Select语句,这些服务将返回DataTable 服务很好,网站也很好 在创建API时,我不知道windows phone sdk不支持数据表 我读了一些关于Windows Phone SDK不支持DataTable的文章,在我的Visual Studio中检查了System.Data名称空间中没有名为DataTable的类 我不熟悉Windows Phone 但现在我们想创建一个WI
System.Data
名称空间中没有名为DataTable的类
我不熟悉Windows Phone
但现在我们想创建一个WINDOWS PHONE应用程序,它也可以和网站一样工作,所以我们想使用现有的API(WCF服务)
有没有办法完成这项任务大多数方法返回类型为DataTable
我们不想创建两个API(表示服务)。我该怎么办
如何创建适用于Windows Phone和网站的服务
我们已经准备好更改API,并根据该API准备好更新网站了吗
谢谢我不知道为什么要使用datatable。你是说数据集吗 它们都是隐藏的XML。尝试解析它们。试着这样做:
var resultNewDataSet = XElement.Parse(xmlContent);
var result = resultNewDataSet.Descendants("Table")
.Select(t => new
{
aaa = t.Descendants("aaa").First().Value,
bbb = t.Descendants("bbb").First().Value
});
foreach (var res in result)
{
System.Diagnostics.Debug.WriteLine("aaa: " + res.aaa + " / bbb: " + res.bbb);
}
只是将API更改为返回
流
,而不是数据表
System.IO.StringWriter reader = new System.IO.StringWriter();
dt.WriteXml(reader, XmlWriteMode.WriteSchema);//dt is datatable
return reader;
StringReader xmlReader = new StringReader(stream);
DataTable dt = new DataTable();
dt.ReadXml(xmlReader);
在网站的小改动中,读取流并将其分配给datatable
System.IO.StringWriter reader = new System.IO.StringWriter();
dt.WriteXml(reader, XmlWriteMode.WriteSchema);//dt is datatable
return reader;
StringReader xmlReader = new StringReader(stream);
DataTable dt = new DataTable();
dt.ReadXml(xmlReader);
更新:
这种方法是不可取的(这是我的第一个web服务应用程序),我建议使用JSON/XML响应(返回DTO
),而不是返回DataTable
下面的链接可能会让您走上正确的方向