2014-09-11 43 views
0

我嘗試使用下面的代碼從Active Directory獲取用戶名和姓:將.aspx.cs文件中的變量傳遞給要顯示的.aspx文件?

Default.aspx.cs:

public partial class _Default : Page 
{ 
    protected void Page_Load(object sender, EventArgs e) 
    { 
     // get the user's name from active dirctory 
     var user = UserPrincipal.Current; 

     string firstName = user.GivenName; 
     string lastName = user.Surname; 
    } 
} 

的Default.aspx:

<p class="text-center"><strong><% =firstName =lastName %></strong></p> 

但是,我收到一個錯誤,指出變量在當前上下文中不存在。

我曾嘗試在兩個字符串前公開,但後來我得到一個錯誤,說這是一個無效的表達式。

任何建議將是偉大的,謝謝

+1

使用'Literal'控制。 – 2014-09-11 12:37:28

回答

3

您的變量範圍本地只是一種方法。爲了讓繼承對象(頁面)看到它們,它們需要是protected(或以上)的類級別成員。事情是這樣的:

protected string FirstName { get; set; } 
protected string LastName { get; set; } 

然後在您的方法:

protected void Page_Load(object sender, EventArgs e) 
{ 
    // get the user's name from active dirctory 
    var user = UserPrincipal.Current; 

    FirstName = user.GivenName; 
    LastName = user.Surname; 
} 

在頁面上:

<p class="text-center"><strong><% =FirstName %> <% =LastName %></strong></p> 
+0

非常感謝! – Nick 2014-09-11 12:43:22

相關問題