Frage

Ok ... bekam URL Routing ganz gut funktioniert, aber kann nicht herausfinden, wie man tatsächlich die Werte in der Zielseite lesen.

Ein Beispiel hier zeigt das RouteValue Objekt aus dem Request verwenden. Nun sind alle diese im System.Web.Routing Namespace, aber jeder scheint diese MVC nur zu verbinden. Woher kommt der Request her?

Wie lese ich diese Parameter ???

Abfragezeichen sind leer, als auch.

TIA! Kevin

War es hilfreich?

Lösung

Gelöst dieses auf meinem eigenen ... Yay me !!! :)

Gestartet herumschlagen mit den Dingen und sah die Schnittstelle IHttpHandler die Request zur GetHttpHandler Methode zur Verfügung stellt.

Also, modifizierte ich meine Basisseitenklasse (Ich habe immer eine Schicht zwischen System.Web.UI.Page und meine eigenen Seiten, es Basepage oder ähnliches nur zum Zwecke aufrufen). So habe ich eine öffentliche Eigenschaft auf PVBasePage ein Request Objekt zu erhalten.

public RequestContext RequestContext { get; set; }

Dann mein Routing-Klasse Code lautet wie folgt:

IHttpHandler IRouteHandler.GetHttpHandler(RequestContext requestContext)
{
    // create the page object as my own page...
    var page = BuildManager.CreateInstanceFromVirtualPath(VirtualPath
        , typeof(PVBasePage)) as PVBasePage;
    // pass in the request context
    page.RequestContext = requestContext;
    // return this page in the form of a IHttpHandler
    return page as IHttpHandler;
}

Also statt, wie es in dem Beispielcode, die Instanz direkt als IHttpHandler zu schaffen, schaffe ich es als meine eigene Seite. Stellen Sie den Anforderungskontext Eigenschaft, und dann wieder die Seite an den Anrufer AS eine IHttpHandler.

getestet und es funktioniert. WOO HOO!

Hope, das hilft jemand anderes die Straße hinunter.

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