2010-12-02 10 views
1

Was ist Ihrer Meinung nach der beste Weg, um die Server-Seite zu einer reinen Javascript-Anwendung mit ASP.NET zu erstellen?Pure Javascript-Anwendung mit ASP.NET

WCF-Rendering JSON? IHttpHandler?

aktualisieren

wie GMail, die im Browser läuft (mit viel Javascript) und senden und Daten mit Ajax erhalten, zum Beispiel.

+2

Wenn es sich um eine reine Javascript-Anwendung ist, Warum benötigen Sie ASP.NET oder eine serverseitige Technologie? – Oded

+1

Node.js - Die beste Möglichkeit, serverseitiges JavaScript in * jeder * Sprache und/oder Framework zu schreiben. –

+0

Aktualisiert, um zu erklären, was "reine Javascript-Anwendung" ist. – 19WAS85

Antwort

2

Im klassischen ASP.NET, es ziemlich einfach ist Handler zu verwenden (IHttpHandler):

context.Response.ContentType = "application/json" 
context.Response.Clear() 
context.Response.AddHeader("Pragma", "no-cache") 
context.Response.AddHeader("Expires", "-1") 
context.Response.Write(myJsonString) 

In Ihrem Markup, verwenden Sie die folgende jQuery-Code:

$.ajax({ 
    type: "GET", 
    url: "GetTasksForTaskSet.ashx?tasksetid=" + guid, 
    contentType: "application/json; charset=utf-8", 
    dataType: "json", 
    success: function(data) { 
     for(var i = 0; i < data.length; i++) { 
      // do something 
     }, 
    error: function(){ alert('error'); } 
}); 
1

Ja, ich würde sagen, ein WCF-Dienst, der JSON zurückgibt. Eine andere, wenn auch weniger intuitive Option wäre die Verwendung von ASP.NET MVC und die Rückgabe von JSON.

Nach Ihrer aktualisierten Frage würde ich ASP.NET MVC wirklich empfehlen, es wird Ihnen erlauben, eine Tonne von Flexibilität zu haben, und genau das zu liefern, wonach Sie fragen.

+0

Ich würde argumentieren, dass ASP.NET MVC für JSON viel intuitiver als WCF ist :) – Matt

+0

Nach dem Update, ja das würde viel mehr Sinn machen; Zuerst dachte ich, dass der OP einfach ein Web-Service-Backend für seine App erstellen wollte. – Nate