Mar*_*rek 5 c# sql-server windows-phone-8
由于我不熟悉Windows Phone 8开发,我想讨论/询问将Windows Phone 8连接到Sql-Server数据库的最佳方法是什么.我试图通过互联网进行搜索,发现只有少数指南对我使用WebService的Linq-to-Sql不起作用.这是我失败的地方.
首先我想显示数据 - 这是最重要的,我还不需要编辑它们.但将来这是不可避免的.
如果编辑工作,我需要直接在我连接的Sql Server上编辑它们.我还检查了Sql Server Compact指南,但这只能在CE 4.0(从Sql Server导出数据到Sql Compact)时才能使用,它不支持Windows Phone 8.但即使它可以工作,它只是简单地将Sql服务器数据库复制到Sql Compact,并且不能直接在Sql Server上使用数据(这是可以理解的,因为它是Sql Server Compact).
因此,当我深入搜索时,唯一的方法是使用WebService我在YouTube上按照一些分步指南进行操作但正如我之前提到的那样,问题在于显示数据,因为指南导致我使用ListBox,因为它是Windows Phone 7.1和Windows Phone 8中只有LongListSelector.
我还发现问题将Windows Phone和Windows 8应用程序连接到SQL Server,这对我来说很安静.
我想我需要一些循序渐进的指导方法.所以我想问你是否有如何连接WP8和Sql Server的分步指南?如果有人会这样,并在这里编辑我的代码以使其工作.
感谢您抽出宝贵时间阅读本文和答案/评论.
女士
那么,为了实现你的目标,我会这样做:
使用ASP.NET Web API(http://www.asp.net/web-api)构建REST Web服务,该Web服务返回对象(这些对象将自动转换为json).例如:
public class MyObject
{
public string Content { get; set; }
}
Run Code Online (Sandbox Code Playgroud)
控制器:
public class TestController : ApiController
{
[HttpGet]
public MyObject Example() {
return new MyObject() { Content = "Hello World!" };
}
}
Run Code Online (Sandbox Code Playgroud)在win phone项目中使用HTTP客户端:
HttpClient client = new HttpClient();
client.BaseAddress = new Uri("http://mywebservice.com");
client.DefaultRequest.Headers.Accept.Add(new MediaTypeWithQualityHeaderValue("application/json"));
using (var result = await client.GetStreamAsync("test/example"))
{
var serializer = new JsonSerializer(); // this is json.net serializer
using (var streamReader = new StreamReader(result)) {
using (var jsonReader = new JsonTextReader(streamReader))
{
var obj = serializer.Deserialize<MyObject>(jsonReader);
// you can access obj.Content now to get the content which was created by the webservice
// in this example there will be "Hello World!"
}
}
}
Run Code Online (Sandbox Code Playgroud)当然,您可以创建更复杂的对象,这些对象将被(反)序列化.只需看看Web API教程.
在您的Web服务中,您现在可以访问所需的任何数据库.
编辑如果您需要更详细的答案,请给我留言.
| 归档时间: |
|
| 查看次数: |
10758 次 |
| 最近记录: |