Frage

Ist es erforderlich TemplateControl.ResolveUrl() aufrufen, bevor es TemplateControl.LoadControl() vorbei?

Welche Art und Weise bevorzugt?

LoadControl(ResolveUrl("~/MyControl.ascx"));
LoadControl("~/MyControl.ascx");
LoadControl("MyControl.ascx");

oder vielleicht ResolveClientUrl()?

War es hilfreich?

Lösung

Es ist nicht erforderlich. Ich würde die erste Methode tun nicht einmal empfehlen, da es nur überflüssig ist und erhöht die Komplexität. Die Tilde bedeutet es bereits auf die Anwendung Wurzel relativ ist - ResolveUrl nur ändert es auf die Seite relativ zu sein oder Usercontrol Sie es aus sind anrufen. So oder so, es wird noch geladen werden.

Der zweite Weg wäre als beste Praxis bevorzugt werden guard gegen eine relative strukturelle Änderungen an Ihrem Projekt zu helfen.

Noch besser wäre es, den Pfad String eine Ressource zu machen oder zumindest eine Konstante der magischen Saiten loszuwerden und Überraschungen ganz zu vermeiden.

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