• 无责任Windows Azure SDK .NET开发入门篇三[使用Azure AD 管理用户信息--3.3 Details用户详细信息]


    3.3 Details用户详细信息

    用户详细信息是通过objectId获取。代码如下

    public async Task<ActionResult> Details(string objectId)
    {
        try
        {
            ActiveDirectoryClient client = AuthenticationHelper.GetActiveDirectoryClient();
            var user = (User)await client.Users.GetByObjectId(objectId).ExecuteAsync();
            return View(user);
        }
        catch (Exception e)
        {
            if (e.Message == "Authorization Required.")
            {
                HttpContext.GetOwinContext().Authentication.Challenge(OpenIdConnectAuthenticationDefaults.AuthenticationType);
            }
            return View();
        }
    }

    对应的View代码如下

    @model Microsoft.Azure.ActiveDirectory.GraphClient.User
    
    @{
        ViewBag.Title = "UserDetails";
    }
    
    <h2>User Details</h2>
    
    <div class="form-horizontal">
        <div class="form-group">
            @Html.LabelFor(model => model.UserPrincipalName, "用户名(全名)", new { @class = "col-sm-2 control-label" })
            <div class="col-sm-10">
                @Html.DisplayFor(model => model.UserPrincipalName)
            </div>
        </div>
        <div class="form-group">
            @Html.LabelFor(model => model.MailNickname, "别名", new { @class = "col-sm-2 control-label" })
            <div class="col-sm-10">
                @Html.DisplayFor(model => model.MailNickname)
            </div>
        </div>
        <div class="form-group">
            @Html.LabelFor(model => model.City, "城市", new { @class = "col-sm-2 control-label" })
            <div class="col-sm-10">
                @Html.DisplayFor(model => model.City)
            </div>
        </div>
        <div class="form-group">
            @Html.LabelFor(model => model.Country, "国家或地区", new { @class = "col-sm-2 control-label" })
            <div class="col-sm-10">
                @Html.DisplayFor(model => model.Country)
            </div>
        </div>
        <div class="form-group">
            @Html.LabelFor(model => model.Department, "部门", new { @class = "col-sm-2 control-label" })
            <div class="col-sm-10">
                @Html.DisplayFor(model => model.Department)
            </div>
        </div>
        <div class="form-group">
            @Html.LabelFor(model => model.DisplayName, "显示名称", new { @class = "col-sm-2 control-label" })
            <div class="col-sm-10">
                @Html.DisplayFor(model => model.DisplayName)
            </div>
        </div>
        <div class="form-group">
            @Html.LabelFor(model => model.PhysicalDeliveryOfficeName, "办公室号码", new { @class = "col-sm-2 control-label" })
            <div class="col-sm-10">
                @Html.DisplayFor(model => model.PhysicalDeliveryOfficeName)
            </div>
        </div>
        <div class="form-group">
            @Html.LabelFor(model => model.TelephoneNumber, "办公电话", new { @class = "col-sm-2 control-label" })
            <div class="col-sm-10">
                @Html.DisplayFor(model => model.TelephoneNumber)
            </div>
        </div>
        <div class="form-group">
            @Html.LabelFor(model => model.GivenName, "名字", new { @class = "col-sm-2 control-label" })
            <div class="col-sm-10">
                @Html.DisplayFor(model => model.GivenName)
            </div>
        </div>
        <div class="form-group">
            @Html.LabelFor(model => model.JobTitle, "职务", new { @class = "col-sm-2 control-label" })
            <div class="col-sm-10">
                @Html.DisplayFor(model => model.JobTitle)
            </div>
        </div>
        <div class="form-group">
            @Html.LabelFor(model => model.PostalCode, "邮政编码", new { @class = "col-sm-2 control-label" })
            <div class="col-sm-10">
                @Html.DisplayFor(model => model.PostalCode)
            </div>
        </div>
        <div class="form-group">
            @Html.LabelFor(model => model.State, "省/自治区/直辖市", new { @class = "col-sm-2 control-label" })
            <div class="col-sm-10">
                @Html.DisplayFor(model => model.State)
            </div>
        </div>
        <div class="form-group">
            @Html.LabelFor(model => model.StreetAddress, "街道地址", new { @class = "col-sm-2 control-label" })
            <div class="col-sm-10">
                @Html.DisplayFor(model => model.StreetAddress)
            </div>
        </div>
        <div class="form-group">
            @Html.LabelFor(model => model.Surname, "姓氏", new { @class = "col-sm-2 control-label" })
            <div class="col-sm-10">
                @Html.DisplayFor(model => model.Surname)
            </div>
        </div>
        <div class="form-group">
            @Html.LabelFor(model => model.UserType, new { @class = "col-sm-2 control-label" })
            <div class="col-sm-10">
                @Html.DisplayFor(model => model.UserType)
            </div>
        </div>
    </div>
    
    <table>
        <tbody>
            <tr>
                <td>
                    @Html.ActionLink("Edit", "Edit", new { objectId = Model.ObjectId }, new { @class = "btn btn-primary" })
                </td>
                <td>
                    @Html.ActionLink("Delete", "Delete", new { objectId = Model.ObjectId }, new { @class = "btn btn-warning" })
                </td>
                <td>
                    @Html.ActionLink("List", "Index", null, new { @class = "btn btn-info" })
                </td>
            </tr>
        </tbody>
    </table>
  • 相关阅读:
    2.Liunx 系统设置
    1.Liunx 文件管理
    Liunx 更新环境时用到的命令
    解决SSH Secure Shell 连接Liunx 有乱码情况。
    JMeter 性能测试基本过程及示例(4)
    在 macOS 中怎样获取当前文件夹的路径?
    Mac环境安装启动jmeter
    StringUtils工具类常用方法汇总1(判空、转换、移除、替换、反转)
    Json与Gson
    Quartz的基本使用之入门(2.3.0版本)
  • 原文地址:https://www.cnblogs.com/shyleoking/p/4719045.html
一二三 - 开发者的网上家园