有人可以简单解释c#如何处理路径 - 或者可能是开发环境和VWD(我认为服务器不应该这样做)?
我有一个页面:/content/consumer/MyPage.aspx
。我的图片都在/images
。
当我放src="/images/myimage.jpg"
或src="\images\myimage.jpg"
为什么我看不到我的照片?如果我放../../images/myimage.jpg
或..\..\images\myimage.jpg
,我可以看到它,或者我是否将其设为服务器控件并使用src="~/images/myimage.jpg
或src="~\images\myimage.jpg
(此时它会将其更改为之前的版本) )。通过以斜线开始我的路径,我能够只是引用根来发生了什么?我是被迫在服务器上运行所有这些控件(这看起来像是浪费资源)还是被声明路径和杂乱的嵌套...(/ |)s所困?
答案 0 :(得分:1)
答案 1 :(得分:1)
您确定自己的路径是/content/consumer/MyPage.aspx
而不是/<projectname>/content/consumer/MyPage.aspx
吗?
默认情况下,Visual Studio / VWD将使用基本路径/<projectname>/
;但是,如果您不喜欢基本路径,则可以打开项目的属性,转到选项卡 Web 并为输入“/
”虚拟路径。
答案 2 :(得分:0)
如果您使用“/”开始引用,则它相对于IIS所见的网站根目录。
如果使用“〜”开始引用,则它与IIS看到的应用程序(虚拟目录)相关。如果您的网站是另一个虚拟目录的子目录,则可能与“/”不同。
如果您没有使用其中任何一个启动它,那么它相对于该文件所在的目录。