Senden von Daten an einen generischen Handler, der JSON-Daten mit C # akzeptiert

8

Ich habe eine Situation, in der ich auf einen generischen ASP.NET-Handler zugreift, um Daten mit JQuery zu laden. Da die von JavaScript geladenen Daten für die Suchmaschinen-Crawler nicht sichtbar sind, entschied ich mich, Daten aus C # zu laden und sie dann für JQuery zwischenzuspeichern. Mein Handler enthält eine Menge Logik, die ich nicht auf den Code hinterher anwenden möchte. Hier ist mein Handler-Code:

%Vor%

Ich kann die Funktion getUserControlMarkup() von C # aufrufen, aber ich muss beim Aufruf einige URL-basierte Bedingungen anwenden. Die contentType.typeOfContent basiert tatsächlich auf URL-Parametern.

Wenn möglich, JSON-Daten an diesen Handler zu senden, dann sagen Sie mir bitte, wie das geht. Ich versuche auf den Handler wie folgt zuzugreifen:

%Vor%

Aber es gibt NullReferenceException im Handler-Code in Zeile: ContentType contentType = jsonSerializer.Deserialize<ContentType>(jsonString);

    
Aishwarya Shiva 18.04.2014, 15:57
quelle

4 Antworten

2

Nicht sicher, warum Sie es tun wollen, aber um einen Inhalt zu einer HTTP-Anfrage hinzuzufügen, verwenden Sie:

%Vor%     
Stefano Altieri 28.04.2014, 08:16
quelle
6

Eine gute Möglichkeit ist das Routing. Im Global.asax

%Vor%

Dies weist ASP.Net an, Ihren Handler in /Something/GetData/XXX/YYY/data.json aufzurufen.

Sie können auf die Routenparameter im Handler zugreifen: context.Request.RequestContext.RouteData.Values["par1"] .

Der Crawler analysiert URLs so lange, wie sie irgendwo referenziert werden (d. h. Roboterdatei oder -links)

    
Stefano Altieri 22.04.2014 12:48
quelle
2

Dein Problem ist

  1. Laden Sie mithilfe von C # Inhalte in Div mithilfe von JavaScript in ASP.NET.
  2. Sichtbar für Suchmaschinen

Meine Meinung

  1. Wenn Sie eine partielle Seite aktualisieren möchten, gibt es einen Handler oder Dienst für die Kommunikation zwischen Server und Client. Sie können Ajax für die Anforderung an den Server verwenden.

Wenn Sie jquery verwenden, können Sie diese Funktion ausprobieren jQuery.ajax(); Beispiel:

%Vor%

Nächster Schritt ist Web-Service in Code hinter Ihrem ASP.NET generieren, das Ergebnis sollte als JSON oder XML-Format sein, was auch immer Sie verwenden, stellen Sie sicher, dass Sie leicht in Erfolgsfunktion von jQuery.ajax();

analysieren können

Hier einige Referenz zum Generieren von Web-Service auf ASP.NET

2.Sichtbar für die Suchmaschine

Ich denke, wenn Sie der Suchmaschine erlauben, Ihre Seite zu indexieren, ist das kein Problem. Selbst wenn Sie einen Ajax-Code haben, indexiert die Suchmaschine Ihre Seite.

    
viyancs 21.04.2014 16:43
quelle
1

Ich habe diesen Artikel gefunden, ich glaube, das wird dir helfen. Ссылка

    
OmerBTW 26.04.2014 18:42
quelle

Tags und Links