我需要从aspx页面内部获取我网站的当前绝对网址(无代码隐藏)。 我尝试了$ SPUrl,但它被转换为相对网址。
<asp:Literal runat="server" text="<% $SPUrl:~Site/mypage.aspx %>" />
结果为“/mypage.aspx”。重要的是我从“http://”开始获取完整的绝对URL。
<asp:Literal runat="server" text="<% $SPUrl:~SiteCollection/mypage.aspx %>" />
做同样的事情。目标是得到这个网址:“http://myspweb.com/mypage.aspx”作为结果。
答案 0 :(得分:1)
杰森对如何获取网址是正确的。
然而,要实现SharePoint的一件事是可能没有真正的“真实”绝对站点URL。使用SharePoint内容数据库,您可以将应用程序扩展到具有不同web.configs等的不同IIS应用程序。通常人们在为员工提供外联网(Active Directory安全性)时执行此操作,但是然后希望允许客户使用via Forms基于身份验证这是SharePoint将事物转换为相对URL的主要原因之一。
答案 1 :(得分:0)
您可以使用SPContext.Current.Site.Url
获取当前网站集的绝对网址:
<%@ Import Namespace="Microsoft.SharePoint"%>
<!-- ... -->
<%= SPContext.Current.Site.Url %>