Domanda

Qual è il modo migliore per creare un servizio Web JSON? Abbiamo un altro team che utilizza Java e insistono affinché tutte le comunicazioni vengano eseguite utilizzando JSON. Preferirei usare WCF piuttosto che qualsiasi framework di terze parti.

Ho trovato questo blog: http://www.west-wind.com /weblog/posts/164419.aspx e suggerisce che l'implementazione di Microsoft è difettosa con merda specifica M $.

È stato utile?

Soluzione 4

Ho finito con JayRock . Il suo fantastico pezzo di tecnologia, funziona e basta. Non ottieni nessuna NullReferenceExceptions come da questa WCF di merda se non la configuri correttamente.

Altri suggerimenti

Se usi WCF e il Framework 3.5, non potrebbe essere più semplice. Quando si contrassegna OperationContracts con l'attributo WebGet, è sufficiente impostare il parametro ResponseFormat su WebMessageFormat.Json. Quando si accede RESTfully al servizio, verranno restituiti i dati utilizzando DataContractJsonSerializer.

È davvero utile contrassegnare i POCO che si desidera serializzare JSON come [DataContract] e contrassegnare ciascun membro serializzabile come [DataMember]. Altrimenti, finirai con JSON funky, come ha sottolineato Rick nel suo post sul blog.

Mantengo un'alternativa open source matura a WCF in ServiceStack , un moderno modello di codice framework di servizi web di sostituzione WCF guidato, codice incoraggiante e best practice remote per la creazione di terse, DRY, servizi web REST scalabili ad alte prestazioni .

Include Il serializzatore JSON più veloce di .NET e ha il supporto automatico JSON, JSONP , CORS nonché intestazioni form-urlencoded / multipart-formdata. Le demo online sono un buon inizio da guardare poiché usano tutti Ajax.

Inoltre, non esiste alcuna configurazione XML o code-gen e il tuo servizio web C # 'write-once' fornisce tutto endpoint JSON, XML, SOAP, JSV, CSV, HTML abilitati immediatamente, automaticamente con ganci per collegare il proprio Tipi di contenuto se necessario.

Include anche client di servizi di sincronizzazione / asincrono generici che forniscono un servizio veloce, tipizzato , gateway di comunicazione client / server end-to-end.

Questo è l'esempio completo di tutto il codice necessario per creare un semplice servizio Web, che è automaticamente senza alcuna configurazione, registrato e reso disponibile su tutto formati di dati web su route REST predefinite e personalizzate :

public class Hello {
    public string Name { get; set; }
}

public class HelloResponse {
    public string Result { get; set; }
}

public class HelloService : IService<Hello> {
    public object Execute(Hello request)
    {
        return new HelloResponse { Result = "Hello, " + request.Name };
    }
}

Il servizio di cui sopra può essere chiamato (senza build-steps / code-gen) in C # con la seguente riga:

var client = new JsonServiceClient(baseUrl);
var response = client.Send<HelloResponse>(new Hello { Name = "World!" });
Console.WriteLine(response.Result); // => Hello, World

E in jQuery con:

$.getJSON('hello/World!', function(r){ 
    alert(r.Result); 
});
  

Qual è il modo migliore per creare un servizio Web JSON? Ne abbiamo un altro   squadra che utilizza Java e insistono per avere tutte le comunicazioni   fatto usando JSON. Preferirei usare WCF piuttosto che qualsiasi terza parte   quadro.

Ecco una guida facile da seguire, che ti guida attraverso il processo di configurazione del tuo primo servizio WCF, quindi di collegarlo a un database SQL Server.

http://mikesknowledgebase.com/pages/Services/WebServices-Page1.htm

Utilizza l'amato database Northwind di Microsoft e mostra come scrivere un semplice servizio Web WCF JSON per leggere e scrivere i suoi dati.

inserisci qui la descrizione dell

Oh, e poi mostra come consumare i dati JSON usando JavaScript o un'applicazione iOS.

Buona fortuna!

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top