silverlight & # 8230; botón de hipervínculo al archivo usando la ruta relativa
-
03-07-2019 - |
Pregunta
Estoy tratando de usar un botón de hipervínculo en Silverlight para permitir al usuario descargar un documento de Word. No me importa si aparece un cuadro de guardar como archivo o si la palabra doc se abre en un nuevo navegador. Me sale el error "no se puede navegar a ubicaciones relativas a una página". Lo he visto publicado que puedes hacer esto con la ruta absoluta (www.dominio.com/nombredearchivo.doc) pero tiene que haber una manera de hacer que este sea relativo (/docs/filename.doc). ¿Alguien sabe cómo?
Solución
El HyperlinkButton solo funciona con URLS absolutas, por lo que debe corregir sus URL en tiempo de ejecución:
uriCurrent = System.Windows.Browser.HtmlPage.Document.DocumentUri;
string current = uriCurrent.OriginalString;
int iLastSlash = current.LastIndexOf('/') + 1;
current = current.Remove(iLastSlash, current.Length - iLastSlash);
Otros consejos
Ligeramente más fácil:
Uri myAbsoluteUri = new Uri(HtmlPage.Document.DocumentUri, myRelativePath);
Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow