asp.net - img - path parts
slash(/) vs tilde slash(~/) en la ruta de la hoja de estilo en asp.net (3)
El segundo no funcionará porque no es una ruta reconocida por nada, excepto el código asp.net en el lado del servidor. Y como su etiqueta de enlace es html regular y no un control de servidor, nunca se procesa.
Cómo se resuelven estos 2 caminos en asp.net. por qué estos 2 dan un camino diferente A qué hora tenemos que ir por estos.
<link href="/common/black_theme/css/style.css" rel="stylesheet"> (this is working)
<link href="~/common/black_theme/css/style.css" rel="stylesheet"> (this is not working)
Según mi conocimiento ~ representa el directorio raíz de la aplicación "Común" es la carpeta debajo de la raíz del sitio web (llamado testsite.demo) en IIS
ruta física = ubicación de la carpeta común D:/Physicalpath/WarpFirstSite/testsite.demo/common
- D:/Physicalpath/WarpFirstSite/testsite.demo/common
Si agrega runat="server"
en su etiqueta de enlace, entonces funcionaría perfectamente ...
Me gusta esto....
<link href="~/common/black_theme/css/style.css" rel="stylesheet" runat="server">
(Esto también está funcionando)
-
/
- raíz del sitio -
~/
- Directorio raíz de la aplicación
La diferencia es que si su sitio es:
http://example.com
Y tienes una aplicación myapp
en:
http://example.com/mydir/myapp
/
devolverá la raíz del sitio ( http://example.com
),
~/
devolverá la raíz de la aplicación ( http://example.com/mydir/
).