如何从sharepoint提供商托管的应用程序更改主机Web URL

时间:2015-12-15 15:37:58

标签: sharepoint-2013 sharepoint-apps

我想从提供商托管应用更改主机网址的网址。 基本上,在我的提供者托管应用程序中完成某些业务逻辑后,我想导航到SharePoint门户的另一个页面(例如搜索中心页面)。

当我执行“response.redirect”或“window.location.href”时,它将在App iframe中加载。我想在主窗口中加载相同的页面。

请建议。

使用我的逻辑进行更新 我有一个通用的方法来获取List主页url

<div id ="image">
    <img 1>
    <img 2>
</div>

我正在调用应用页面中的代码。

public string ListHomePage(ClientContext clientContext, string listName)
        {

            Web spWeb = clientContext.Web;
            clientContext.Load(spWeb, web => web.Url);
            clientContext.ExecuteQuery();

            return TokenHelper.GetAppContextTokenRequestUrl(spWeb.Url, HttpContext.Current.Server.UrlEncode(spWeb.Url + "/Lists/" + listName));
        }

1 个答案:

答案 0 :(得分:0)

使用以下代码可以实现同样的效果,因为AppPart在iframe中加载

    string redirectUrl = ListHomePage(clientContext1, "Test ListName");
    string script = "<script type='text/javascript'>window.parent.location.href = '" + redirectUrl + "'; </script>";
    //Here I am using Telerik ScriptManager to execute script
    RadScriptManager.RegisterStartupScript(this, this.GetType(), "Load", script, false);