none
Aus der MSDN-Hotline: URLs dynamisch erzeugen mit der deklarativen Syntax (Eval, Bind) RRS feed

  • Allgemeine Diskussion

  • Hallo zusammen,
    heute wurde uns bei der MSDN Hotline unter anderem folgende Frage gestellt:

    Ich möchte eine URL über die deklarative Syntax dynamisch erzeugen, beispielsweise mit NavigateUrl='<%# "~/Site.aspx?pid=" + Eval("Id") + "&foo=true&bar=" %>', habe aber Probleme die Funktion DoSomething(Id) über die Eval-Notation aufzurufen. Was kann ich tun?

    Unsere Antwort bzw. unser Lösungsvorschlag darauf war:

    Es ist möglich, innerhalb von <%# %> beliebige Methoden aufzurufen (vgl. Brinkster) und die Parameter-Werte über Eval() zu bestimmen. Denkbar wäre ein Aufruf wie <%# DoSomething( Eval("Id") ) %> oder einfach <%# DoSomething(Id) %>.
    Auf der Seite West-wind wird diskutiert, wie evaluierte Strings zusammengefügt werden. Ebenso wird auf 15seconds gezeigt, wie man dynamisch mit der deklarativen Syntax URLs erzeugt.
    Wichtig ist in jedem Fall, dass auf der betreffenden Seite vorher Page.DataBind(); aufgerufen wird, sonst lassen sich Methoden aus dem Codebehind nicht evaluieren (vgl. forums.asp.net).

    Wir hoffen, vielen Besuchern der MSDN Foren durch das Posten dieses Problems und einer möglichen Lösung weiterhelfen zu können.

    Viele Grüße,
    Jonathan Best
    MSDN Hotline für MSDN Online Deutschland

    Disclaimer:
    Bitte haben Sie Verständnis dafür, dass wir hier auf Rückfragen gar nicht oder nur sehr zeitverzögert antworten können.
    Bitte nutzen Sie für Rückfragen oder neue Fragen den telefonischen Weg über die MSDN Hotline: http://www.msdn-online.de/Hotline
    MSDN Hotline: Schnelle & kompetente Hilfe für Entwickler: kostenfrei!

    Es gelten für die MSDN Hotline und dieses Posting diese Nutzungsbedingungen, Hinweise zu Markenzeichen Informationen zur Datensicherheit sowie die gesonderten Nutzungsbedingungen für die MSDN Hotline.

    Mittwoch, 19. Januar 2011 17:20