ASPX 未在生产 Azure Stack 中重定向

问题描述

我正在 Azure Stack 上部署在 ASP.NET 中创建的网站。我试图在身份验证后重定向一个 ASPX 页面,它在我的本地机器上运行良好,但在发布后,即使凭据正确,它也不会转到此页面。以下代码来自 CS 页面

Response.Redirect("~/TestPage.aspx",false);
Context.ApplicationInstance.CompleteRequest();

页面包含

<asp:Content ID="Content1" ContentPlaceHolderID="ContentPlaceHolder1" runat="server">
     <div class="row">
        <div class="col-md-12">

            <div class="panel panel-default">
                <div class="panel-heading">
                </div>
                <br />
                <div class="panel-heading">
                    <i class="fa fa-dashboard"></i><b>
                        <asp:Label ID="lblTestDashboard" runat="server" /></b>

                </div>
                <br />

                <div class="panel-body">

                    <div>
                      DASHBOARD
                    </div>                    
                </div>
            </div>
        </div>
    </div>
</asp:Content>
<asp:Content ID="Content3" ContentPlaceHolderID="ContentPlaceHolder3" runat="server">
</asp:Content>

在此之上,母版页正在调用代码

部署后,我遇到重定向到此页面的问题,但如果创建一个新网页并尝试重定向,则它可以轻松导航到此新页面。我在为为什么上面的页面无法重定向而苦苦挣扎。这段代码有问题吗?

解决方法

我检查了我的母版页写在哪里

HttpContext.Current.User.Identity.Name

AzureStack 不支持它,所以我通过会话传递用户名而不是这个,然后验证它。

string.IsNullOrEmpty(Convert.ToString(Session["UserID"]]

它奏效了。在 Azure Stack 上,Identity 永远不会工作。