2010-12-30 2 views
0

So habe ich eine kleine Hilfsmethode, die die Login-URL für die DotNetNuke-Site zurückgibt, aber es funktioniert nur, wenn Sie die (PortalSettings und HttpRequest-Objekte) haben.Wie kann ich die Login-URL für eine DotNetNuke-Site zurückgeben, wenn meine aktuelle Sitzung nicht bei DNN registriert ist?

Leider auf der DNN statische Methode aufrufen:

PortalController.GetCurrentPortalSettings 

kehrt nicht die PortalSettings widersprechen, wenn meine Sitzung mit DNN nicht registriert hat. Meine Situation ist, dass ich eine Ajax-Aufrufe an eine Web-Methode, die ich möchte die Login-URL abrufen und die Zeichenfolge an die Seite zurückgeben, um einen Benutzer auf die Anmeldeseite umleiten, die Sitzung Zeitüberschreitung ist.

Leider gibt es Null zurück.

Message":"Value cannot be null.\r\nParameter name: portalSettings","StackTrace":" 

Die PortalController-Methode gibt null zurück.

Irgendwelche Gedanken?

Antwort

2

Versuchen Sie, PortalId als Querystring-Parameter in Ihrer AJAX-Anfrage hinzuzufügen (d. H. Statt /DesktopModules/MyModule/Service.asmx verwenden Sie /DesktopModules/MyModules/Service.asmx?portalId=1). Dadurch sollte DNN die Anforderung ausreichend verarbeiten, um ein PortalSettings-Objekt zu erstellen.

Verwandte Themen