2011-01-11 15 views
13

मैं अपने मास्टर पेज से उपयोगकर्ता की इडेंटिटी तक पहुंचने की कोशिश कर रहा हूं, इसलिए मैं यह पता लगा सकता हूं कि कौन सा उपयोगकर्ता लॉग इन है, हालांकि मैं इसे काम नहीं कर सकता। अगर मैं अपने मास्टर पृष्ठ में System.Security.Principal आयात यह कोई फर्क नहीं पड़ता:उपयोगकर्ता को एक्सेस करना। मास्टर पेज

<%@ Import Namespace="System.Security.Principal" %> 

मैं यह ठीक उपयोग कर सकते हैं अगर मैं एक नियंत्रक के भीतर का प्रयास करें।

कोई विचार मुझे क्या करना है?

उत्तर

51

HttpContext.Current.User.Identity के माध्यम से क्या?

8

<%=HttpContext.Current.User.Identity.Name %> वर्तमान उपयोगकर्ता नाम HttpContext.Current.User प्रदर्शित करेगा, आईप्रिनियल ऑब्जेक्ट प्राप्त होगा।

<%@ Master Language="C#" Inherits="System.Web.Mvc.ViewMasterPage" %> 

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> 
<html xmlns="http://www.w3.org/1999/xhtml"> 
<head runat="server"> 
    <title> 
     <asp:ContentPlaceHolder ID="TitleContent" runat="server" /> 
    </title> 
    <link href="../../Content/Style.css" rel="stylesheet" type="text/css" /> 
</head> 
<body> 
    <div class="page"> 
     <div id="header"> 
      <div id="title"> 
       <h1 id="maintitle"> 
        <%=HttpContext.Current.User.Identity.Name %> 
       </h1> 
      </div> 
     </div> 
     <div id="main"> 
      <asp:ContentPlaceHolder ID="MainContent" runat="server" /> 
     </div> 
    </div> 
</body> 
</html> 
0

आप से प्राप्त कर सकते हैं:

Context.User.Identity.Name

2

आप HttpContext.Current.User.Name उपयोग कर सकते हैं, लेकिन आप

यहाँ एक मास्टर पृष्ठ है कि केवल शीर्षक में उपयोगकर्ता नाम प्रदर्शित करता है याद रखने की आवश्यकता है कि Master Page कोड दास पृष्ठ कोड के बाद ही निष्पादित किया जाता है। इसलिए जब तक आप मास्टर पेज में कोई सुरक्षा तर्क नहीं कर रहे हैं तब तक आप इस चर का उपयोग कर सकते हैं।

3

मुझे लगता है कि अपने काम

HttpContext.Current.User.Identity.Name.ToString() 

या

Page.User.Identity.Name.ToString() 
+0

क्या स्वीकार किए जाते हैं जवाब की तुलना में इस ऐड करता है? – beresfordt

+0

'पेज। उपयोगकर्ता' किसी भी तरह से 'HttpContext.Current.User' से क्लीनर लगता है। स्वाद का मामला क्योंकि वे एक ही काम करते हैं। –

+0

मुझे समझ में नहीं आता कि तुम क्या कह रहे हो –

संबंधित मुद्दे