Conectando Windows Phone 8 al servidor SQL

Como no soy muy hábil en el desarrollo de Windows Phone 8, me gustaría discutir / preguntar cuál es la mejor manera de conectar mi Windows Phone 8 a la base de datos de SQL Server . Intenté buscar en Internet y solo encontré algunas guías que no funcionaron para mí Linq-to-Sql utilizando WebService . Aquí es donde fallé.

En primer lugar, me gustaría mostrar datos: esto es lo más importante, no necesito editarlos todavía. Pero en el futuro es inevitable.

Si la edición funcionara, debo editarlos directamente en el servidor Sql al que estoy conectado. También verifiqué la guía de Sql Server Compact, pero eso solo funciona bajo CE 4.0 (al exportar datos de Sql Server a Sql Compact) que no es compatible con Windows Phone 8 . Pero incluso si funcionara, simplemente copia la base de datos del servidor Sql a Sql Compact y no funciona con datos directamente en Sql Server (lo cual es comprensible porque es Sql Server Compact).

Entonces, mientras buscaba en profundidad, la única forma de hacerlo era mediante el uso de WebService. Seguí algunas guías paso a paso en YouTube, pero como mencioné anteriormente, el problema era mostrar datos, ya que la guía me llevó a usar ListBox porque era para Windows Phone 7.1 y en Windows Phone 8 solo es LongListSelector.

También encontré la pregunta Conectar aplicaciones de Windows Phone y Windows 8 a SQL Server, que me fue muy útil.

Creo que necesito una guía paso a paso. Entonces, me gustaría preguntarle si hay alguna guía paso a paso sobre cómo conectar WP8 y el servidor Sql. Si alguien fuera así y edita mi código aquí para que funcione.

Gracias por su tiempo leyendo esto y respuestas / comentarios.

SRA

Bueno, para lograr tu objective, yo haría:

  1. Cree un servicio web REST con ASP.NET Web API ( http://www.asp.net/web-api ) que devuelve objetos (esos objetos se traducirán a json automáticamente). Por ejemplo:

    public class MyObject { public string Content { get; set; } } 

    Controlador para ello:

     public class TestController : ApiController { [HttpGet] public MyObject Example() { return new MyObject() { Content = "Hello World!" }; } } 
  2. Use un cliente HTTP en su proyecto de teléfono ganador:

     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(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!" } } } 

Seguro que puedes crear objetos mucho más complejos que serán (des) serializados. Basta con echar un vistazo a los tutoriales de API web.

Dentro de su servicio web ahora puede acceder a cualquier base de datos que desee.

Editar Si necesita una respuesta más detallada, déjeme un comentario.