2011-10-11 74 views
1

我需要添加一個表單變量的檢查傳遞給我的adfs登錄頁面,但當我添加任何內容的Page_Load函數它打破。添加表單驗證到ADFS登錄

FormsSignIn.aspx

<%@ Page Language="C#" MasterPageFile="~/MasterPages/MasterPage.master" AutoEventWireup="true" ValidateRequest="false" 
    CodeFile="FormsSignIn.aspx.cs" Inherits="FormsSignIn" Title="<%$ Resources:CommonResources, FormsSignInPageTitle%>" 
    EnableViewState="false" runat="server"%> 
<%@ OutputCache Location="None" %> 

<asp:Content ID="FormsSignInContent" ContentPlaceHolderID="ContentPlaceHolder1" runat="server"> 
    <div class="GroupXLargeMargin"><asp:Label Text="<%$ Resources:CommonResources, FormsSignInHeader%>" runat="server" /></div> 
    <h3>*******I Want lbl1.Text to output here from the codefile.</h3> 
    <table class="UsernamePasswordTable"> 
     <tr> 
      <td> 
       <span class="Label"><asp:Label Text="<%$ Resources:CommonResources, UsernameLabel%>" runat="server" /></span> 
      </td> 
      <td> 
       <asp:TextBox runat="server" ID="UsernameTextBox" ></asp:TextBox>    
      </td> 
      <td class="TextColorSecondary TextSizeSmall"> 
       <asp:Label Text="<%$ Resources:CommonResources, UsernameExample%>" runat="server" /> 
      </td> 
     </tr> 
     <tr> 
      <td> 
       <span class="Label"><asp:Label Text="<%$ Resources:CommonResources, PasswordLabel%>" runat="server" /></span> 
      </td> 
      <td> 
       <asp:TextBox runat="server" ID="PasswordTextBox" TextMode="Password" ></asp:TextBox>    
      </td> 
      <td>&nbsp;</td> 
     </tr> 
     <tr> 
      <td></td> 
      <td colspan="2" class="TextSizeSmall TextColorError"> 
       <asp:Label ID="ErrorTextLabel" runat="server" Text="" Visible="False"></asp:Label> 
      </td> 
     </tr> 
     <tr> 
      <td colspan="2"> 
       <div class="RightAlign GroupXLargeMargin"> 
        <asp:Button ID="SubmitButton" runat="server" Text="<%$ Resources:CommonResources, FormsSignInButtonText%>" OnClick="SubmitButton_Click" CssClass="Resizable"/> 
       </div> 
      </td> 
      <td>&nbsp;</td> 
     </tr> 
    </table> 
</asp:Content> 

FormsSignIn.Aspx.cs

using System; 
using Microsoft.IdentityServer.Web; 
using Microsoft.IdentityServer.Web.UI; 

public partial class FormsSignIn : FormsLoginPage 
{ 
    protected void Page_Load(object sender, EventArgs e) 
    { 
      //Uncommented, this breaks!!!!!!!!!!!!!! 
     /* if (!string.IsNullOrEmpty(Page.Request.Form["foo"])) { 
       lbl1.Text = Page.Request.Form["foo"].Trim(); 
     } else { 
       lbl1.Text = "not found"; 
      } */ 
    } 

    protected void HandleError(string message) 
    { 
     ErrorTextLabel.Visible = true; 
     ErrorTextLabel.Text = Resources.CommonResources.IncorrectUsernameText; 
    } 

    protected void SubmitButton_Click(object sender, EventArgs e) 
    { 
     try 
     { 
      SignIn(UsernameTextBox.Text, PasswordTextBox.Text); 
     } 
     catch (AuthenticationFailedException ex) 
     { 
      HandleError(ex.Message); 
     } 
    } 
} 

回答