【发布时间】:2018-11-13 19:17:56
【问题描述】:
我有一个应用程序,通过将querystring 中的凭据传递给我的应用程序,另一个应用程序使用该应用程序。我将使用querystring 并进行 LDAP 身份验证。如果失败,我将转到我的应用程序登录页面从 URL 清除查询字符串(Response.Redirect(Request.RawUrl.Replace(Request.Url.Query, ""), false);)后输入凭据。但在这里我必须向用户显示一条消息,如无效的 NT 凭据。我将消息分配给 Session 变量,然后分配给 asp.net 标签,但它不是工作即没有警告消息来。
这是我做的代码
if (AutheticateLDAP("LDAP://dc01-opsoft.corp.ae", txtUserName.Value, txtPassword.Value))
{
}
else
{
Session["val"] = "Invalid credentials,Use NT UserId and Password";
if (!string.IsNullOrEmpty(Request.Url.Query))
{
txtUserName.Attributes.Remove("readonly");
txtPassword.Attributes.Remove("readonly");
Response.Redirect(Request.RawUrl.Replace(Request.Url.Query, ""), false);
}
lblMsg.Text = Session["val"].ToString();
return;
}
在这里,当我调试时,我可以看到值已正确分配给lblMsg.Text,但最终它在 UI 中消失了
【问题讨论】:
-
不使用完整的回发,而是使用 updatepanel 进行部分回发,这样只会更新标签,而不是重新加载完整的页面。
-
标签已经存在于更新面板中
-
你能用更新面板和标签显示一些前端代码吗