Pergunta

É necessário para TemplateControl.ResolveUrl() chamada antes de passá-la para TemplateControl.LoadControl()?

Qual é o preferido caminho?

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

ou talvez ResolveClientUrl()?

Foi útil?

Solução

Não é necessário. Eu nem recomendo fazer o primeiro método, uma vez que é apenas redundante e adiciona complexidade. Os meios de til é em relação ao já a raiz do aplicativo - ResolveUrl só muda que seja em relação à página ou UserControl que você está chamando-lo partir. De qualquer forma, ele ainda será carregado.

A segunda maneira seria preferível como uma melhor prática para ajudar a proteger contra mudanças estruturais relativos ao seu projeto.

Ainda melhor seria para fazer a cadeia de caminho um recurso ou, pelo menos, uma constante para se livrar das cordas mágicas e evitar surpresas completamente.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top