Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/image/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Image 在不同的DNN页面上将url解析为.aspx_Image_Url_Dotnetnuke - Fatal编程技术网

Image 在不同的DNN页面上将url解析为.aspx

Image 在不同的DNN页面上将url解析为.aspx,image,url,dotnetnuke,Image,Url,Dotnetnuke,我在自定义DNN模块的服务器端后台创建以下HTML代码。这必须在服务器上创建,而不是在CSS中创建 <div class=""ca-icon"" style=""background-image: url(DesktopModules/MyModule/" + "ShowPictureImg.aspx?Key=" + KeyImgList(itemCount - 1) + ")""> 父母的子女: url(../DesktopModules/

我在自定义DNN模块的服务器端后台创建以下HTML代码。这必须在服务器上创建,而不是在CSS中创建

<div class=""ca-icon"" style=""background-image: url(DesktopModules/MyModule/" +
                    "ShowPictureImg.aspx?Key=" + KeyImgList(itemCount - 1) + ")"">
父母的子女:

url(../DesktopModules/MyModule/ShowPictureImg.aspx?Key=SomeKey)
儿童之子:

url(../../DesktopModules/MyModule/ShowPictureImg.aspx?Key=SomeKey)

等等等等。如何获得一个无论模块放置在何处都能持续工作的url?

如果您使用
url(/DesktopModules/MyModule/
(请注意开头的
/
),它应该从您网站的根目录开始您的URL。假设您没有在子目录中运行您的网站,这应该可以满足您的需要。

如果您使用
URL(/DesktopModules/MyModule/
(请注意开头的
/
),它应该从网站的根目录开始您的URL。假设您没有在子目录中运行您的网站,这应该可以满足您的需要。

如果您将此模块分发到野外,我实际上会使用ResolveClientUrl()如果您处于子门户设置中,或者如果DNN不在站点的根目录中,则以/DesktopModules..etc获取URL将不起作用

总的来说是这样的

<%= Page.ResolveClientUrl("~/Desktop...") %>

你的完整路径在那里,开头有一个~/的地方


这将确保它得到正确处理。

如果您将此模块分发到野外,我将实际使用ResolveClientUrl()以/DesktopModules.的形式获取URL。如果您处于子门户设置中,或者如果DNN不在站点根目录中,则etc将不起作用

总的来说是这样的

<%= Page.ResolveClientUrl("~/Desktop...") %>

你的完整路径在那里,开头有一个~/的地方


这将确保它被正确处理。

我实际上发现,
ControlPath
在所有情况下都能正常工作。因此,我对url的最终结果是这样的

"url(" + ControlPath + "ShowPictureImg.aspx?Key=" + Key + ")"

这基本上导致了
url(/site/DesktopModules/Modulename/ShowPictureImg.aspx?Key=1234)
我发现
ControlPath
在我所知的所有情况下都能工作。所以我对url的最终结果是这样的

"url(" + ControlPath + "ShowPictureImg.aspx?Key=" + Key + ")"
这实际上导致了
url(/site/DesktopModules/Modulename/ShowPictureImg.aspx?Key=1234)