我是 MVC4/razor2 的新手,我认为了解使用的一般好处@Url.Content
and @Url.Action
- 如果我的路由或虚拟目录发生变化,magic-url-strings 会正确呈现。
我正在查看一些遗留的 Javascript-with-razor 代码在一个视图中上面撒满了'@Url.Content("~")'
。这呈现为'/'
- 或者,网站根目录。哪个......总是如此,不是吗?
或者在某些情况下可以以不同的方式呈现?
注:是not ~/
- 只是简单的波浪号。
我计划提取对辅助函数的 razor 调用,并将 JavaScript 的主要块移动到外部文件中(用于 linting 和一般“清洁”)。我不需要“修复”当前发生的任何事情,但我想更好地理解它。
Url.Content 将波形符映射到应用程序根目录。应用程序根目录与网站根目录不同。
从这篇文章http://msdn.microsoft.com/en-us/library/system.web.virtualpathutility(v=vs.110).aspx:
绝对虚拟路径以斜杠符号 (/) 开头。 A
相对虚拟路径是相对于应用程序根目录的,
如果它只是一个波形符 (~) 或以波形符和双精度字符开头
反斜杠 (~\) 或波形符和斜杠标记 (~/)。制作一个虚拟的
相对路径使路径独立于应用程序。
从 MVC4 开始,不需要 Url.Content 将波浪号转换为应用程序根目录:http://beletsky.net/2012/04/new-in-aspnet-mvc4-razor-changes.html
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)