4 Stimmen

Backbone.js ohne REST mit ASP.net Webservice

(Entschuldigung für das Englisch)

Ich habe eine ASP.net-Webservice, die Daten aus einer Oracle-Datenbank zurück JSON-Daten erhalten.

TestWebService.asmx/getUserData

Ich teste dies mit einfach ajax Anfrage mit jQuery

$.ajax({
     type:"POST",
     data:"{}",
     dataType:"json",
     contentType:"application/json; charset=utf-8",
     url:"TestWebService.asmx/getUserData",
     success:function(data){
         console.log(data.d);
     }
});

Diese Arbeit.

Aber jetzt möchte ich versuchen, Backbone.js zu verwenden

Die Anwendung hat dies: Benutzerdaten, Artikel und Kaufauftrag, wo ein Kaufauftrag ist eine Sammlung von Artikeln, so denke ich in diesem Modelle für Backbone

User = Backbone.Model.extend({})
Article = Backbone.Model.extend({})
ArticleCollection = Backbone.Collection.extend({})
BuyOrder = Backbone.Model.extend({})
BuyOrderCollection = Backbone.Collection.extend({})

Die Ansichten sind nur 2. ein Formular, in dem ich die Benutzerdaten und Eingaben zeige, um Artikel hinzuzufügen und den Kaufauftrag zu erstellen und eine Visualisierungsansicht, um die Kaufaufträge zu zeigen, wo der Benutzer den Inhalt eines Kaufauftrags sehen und überprüfen kann, indem er in den Code klickt.

Die Benutzerdaten und ein Teil der Artikeldaten werden vom Dienst bezogen: (Benutzerdaten wie Name und Artikeldaten wie Code, Beschreibung, Preis usw.).

¿Wie kann ich die Backbone-Modelle mit diesen Daten füllen?

Vielen Dank im Voraus.

6voto

Brian Genisio Punkte 47135

Im Grunde genommen wollen Sie also Folgendes außer Kraft setzen Backbone.sync . Es ist die Sache, die derzeit Ihre RESTful Sachen (GET/POST/PUT/DELETE) über die $.ajax Funktion auch. Sehen Sie, wie sie standardmäßig implementiert ist: http://documentcloud.github.com/backbone/docs/backbone.html#section-134

Wie Sie sehen können, ist es wirklich recht einfach... etwa 30 oder so Zeilen Code, um create/update/delete/read auf post/put/delete/get in abzubilden $.ajax .

Jetzt, wo Sie gesehen haben, wie sie es machen, implementieren Sie einfach Ihre eigene Lösung nach demselben Muster:

Backbone.sync = function(method, model, options) {
    // your implementation
};

Wenn Sie das getan haben, sind Sie auf der sicheren Seite. Ihre Modelle werden alle CRUD-Funktionen ausführen, die Sie wünschen, abstrahiert durch Ihre Implementierung von Backbone.sync .

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X