当前位置 : 主页 > 网络编程 > ASP >

asp.net – 〜/不是从app root开始的

来源:互联网 收集:自由互联 发布时间:2021-06-24
我知道这可能是一个基本问题,但它让我发疯.我有一个asp.net(4.0框架)应用程序,我一直在努力.我在根目录中有一个母版页,在子目录中有一个辅助母版页.辅助母版页继承了网站母版. 问题
我知道这可能是一个基本问题,但它让我发疯.我有一个asp.net(4.0框架)应用程序,我一直在努力.我在根目录中有一个母版页,在子目录中有一个辅助母版页.辅助母版页继承了网站母版.

问题是即使我用〜/来描述资源的位置(“< img src =”〜/ Images / myImage.jpg“/>),它们也没有加载.
在firebug上使用控制台,我收到此错误:“NetworkError:404 Not Found – http://localhost:4601/Account/~/Images/myImage.jpg”

我需要做什么才能在子文件夹中正确地将资源从母版页转换为母版页?我对’〜/’的误解是什么?

运用

<img src="~/Images/myImage.jpg" />

将HTML代码与.Net ASP代码混合使用.代字号(〜)不是HTML标记的东西,这就是它不能产生你想要的东西的原因.

要使其正常工作,您需要使用< %%>更改源代码.标签,可以让你添加ASP代码,在处理时将被翻译成HTML代码.

<img src="<%= Page.ResolveUrl("~/Images/myImage.jpg") %>" />

在ASP.NET标记内部,您应该使用ResolveURL将URL转换为HTML将能够理解的内容.

如果您不想使用此技巧,您还可以使用ASP.NET img标记代替ASP.NET图像控件.这将自动执行ResolveUrl

<asp:Image runat="server" ID="imgHelp"  ImageUrl="~/Images/myImage.jpg" />
网友评论