Доступ к User.Identity из главной страницы - PullRequest
14 голосов
/ 12 января 2011

Я пытаюсь получить доступ к User.Identity со своей главной страницы, чтобы я мог выяснить, какой пользователь вошел в систему, однако я не могу заставить его работать.Если я импортирую System.Security.Principal в свою главную страницу, это не имеет значения:

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

Я могу получить к нему доступ, если попытаюсь в контроллере.

Есть идеи, что мне нужно делать?

Ответы [ 5 ]

53 голосов
/ 12 января 2011

А как насчет HttpContext.Current.User.Identity?

8 голосов
/ 12 января 2011

<%=HttpContext.Current.User.Identity.Name %> Отобразит имя текущего пользователя. HttpContext.Current.User получит объект IPrincipal.

Вот главная страница, на которой в заголовке отображается только имя пользователя:

<%@ 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>
3 голосов
/ 14 марта 2015

Я думаю, что его работа

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

или

Page.User.Identity.Name.ToString()
2 голосов
/ 19 февраля 2012

Вы можете использовать HttpContext.Current.User.Name, но вам нужно помнить, что код Master Page выполняется только после кода страницы ведомого устройства. Таким образом, вы можете использовать эту переменную, если вы не выполняете никакой логики безопасности на главной странице.

0 голосов
/ 12 января 2011

Вы можете получить это от:

Context.User.Identity.Name

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...