Funktioniert das teilweise Rendern von ASP.NET AJAX innerhalb einer SharePoint 2007-Anwendungsseite?

StackOverflow https://stackoverflow.com/questions/3075

  •  08-06-2019
  •  | 
  •  

Frage

Ich habe eine einfache Seite mit meinem ScriptManager und mein UpdatePanel, und mein ContentTemplate hat eins ListBox und ein Etikett.Ich versuche nur, es zu fangen OnSelectionChanged damit ich den Text im aktualisieren kann Label.Egal welche Einstellungen ich versuche, ich erhalte immer ein ganzseitiges Postback.

Wird das wirklich nicht funktionieren, oder vermassle ich es nur?

War es hilfreich?

Lösung

Sie benötigen Sharepoint 2007 Service Pack 1 – sonst gibt es keine Chance.(Sharepoint 2007 ist älter als Ajax 1.0 – sie haben einige Unterstützung in Service Pack 1 integriert)

Testen Sie als nächstes aus Sicht der Fehlerbehebung, ob die genau Derselbe Code funktioniert wie erwartet, wenn er auf einer regulären asp.net-Seite gehostet wird.(Kopieren Sie Ihren Code buchstäblich und fügen Sie ihn in eine neue Seite ein, um Tippfehler auszuschließen.)Wenn Sie Sharepoint innerhalb oder außerhalb des Problembereichs regeln, können Sie den Lösungsraum eingrenzen.

Andere Tipps

Wenn Sie SharePoint 2007 (ohne Service Pack 1) installiert haben, können Sie einem Beispiel wie dem folgenden Artikel folgen:

AjaxBasePart:Einfache ASP.NET 2.0 AJAX-Erweiterungen 1.0 und Office SharePoint Server 2007

Der Grund dafür ist, dass es ein spezifisches Problem beim Mischen von doPostback, UpdatePanel und SharePoint gibt – und das Symptom ist genau das, was Sie sehen:ein ganzseitiges Postback anstelle eines asynchronen Postbacks.Eine Problemumgehung finden Sie in diesem KB-Artikel: Ein Webpart, das ein ASP.NET AJAX 1.0 UpdatePanel-Steuerelement enthält, das die _doPostBack() ... verwendet.

Andernfalls können Sie einfach Service Pack 1 installieren, um Ihr Problem zu beheben:

Windows SharePoint Services 3.0 Service Pack 1 (SP1)

Es gibt ein spezifisches Problem beim Mischen von doPostback, UpdatePanel und SharePoint – und das Symptom ist genau das, was Sie sehen:ein ganzseitiges Postback anstelle eines asynchronen Postbacks.Eine Problemumgehung finden Sie in diesem KB-Artikel: http://support.microsoft.com/kb/941955

Todd Bleeker von Mindsharp zeigte mir einen von ihm geschriebenen Code, der Ajax auf Sharepoint 2.0 verwenden kann.Es war ziemlich cool.Ich glaube, dass das Unternehmen es in seiner SharePoint-Site-Management-Software verwendet hat, falls Sie einen Blick darauf werfen möchten.(Früher konnten Sie eine 30-Tage-Testversion anfordern).Ich wette, wie man das macht, steht in ihrer Yahoo-Gruppe (ich kann mich nicht an den Namen erinnern, aber ich bin sicher, wenn Sie nach mindsharp suchen, werden Sie ihn finden.)

Hinweis: Ajax gibt es schon seit langer Zeit.Microsoft hat es seit 2002 problemlos unterstützt, vielleicht schon früher mit der Veröffentlichung von IE 5.5 (über andere Browser weiß ich nichts, ich habe intern an der Entwicklung gearbeitet und wir haben damals nur IE unterstützt).Es wurde einfach nicht so genannt.Der Begriff Ajax ist nichts anderes als ein Marketingbegriff, den jemand später geprägt hat.

Wenn Sie das neueste Service Pack für SharePoint 2007 erwerben, wird Ihr Problem gelöst (und die volle Unterstützung für AJAX hinzugefügt).Ohne das Service Pack müssen Sie einem Beispiel wie dem in diesem Artikel beschriebenen folgen:

AjaxBasePart:Einfache ASP.NET 2.0 AJAX-Erweiterungen 1.0 und Office SharePoint Server 2007

Veröffentlichen Sie diese Anhörung, damit die Leute wissen, dass es auch ohne das neueste Service Pack eine Antwort gibt (die Antwort von SecretGeek scheint zu sagen, dass es keine Chance gibt).

Aus technologischer Sicht Service Pack 1 nicht Fügen Sie volle Unterstützung für ASP.NET AJAX hinzu.Sie müssen weiterhin die in den verschiedenen Artikeln der vorherigen Antworten beschriebenen Problemumgehungen verwenden.

Insbesondere müssen Sie sicherstellen, dass die web.config-Datei für Ihre SharePoint-Webanwendung aktualisiert wurde, um die entsprechende Version der ASP.NET AJAX-Erweiterungen zu unterstützen.

Die Tatsache, dass die web.config nicht aktualisiert wurde, war die wahrscheinlichste Ursache für das in der ursprünglichen Frage beschriebene Problem.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top