public async Task <IHttpActionResult> Get() { var meta = await GetMetadataAsync(); var data = new Dictionary <string, object>(); var cp = (ClaimsPrincipal)User; var name = cp.Identity.Name; data.Add("currentUser", new { username = name }); var links = new Dictionary <string, object>(); links["users"] = Url.Link(Constants.RouteNames.GetUsers, null); if (meta.RoleMetadata.SupportsListing) { links["roles"] = Url.Link(Constants.RouteNames.GetRoles, null); } if (meta.UserMetadata.SupportsCreate) { links["createUser"] = new CreateUserLink(Url, meta.UserMetadata); } if (meta.RoleMetadata.SupportsCreate) { links["createRole"] = new CreateRoleLink(Url, meta.RoleMetadata); } return(Ok(new { Data = data, Links = links })); }
public async Task <IActionResult> Get() { var meta = await GetMetadataAsync(); var data = new Dictionary <string, object> { { "currentUser", new { username = User.Identity.Name } } }; var links = new Dictionary <string, object> { ["users"] = Url.Link("GetUsers", null) }; if (meta.RoleMetadata.SupportsListing) { links["roles"] = Url.Link("GetRoles", null); } if (meta.UserMetadata.SupportsCreate) { links["createUser"] = new CreateUserLink(Url, meta.UserMetadata); } if (meta.RoleMetadata.SupportsCreate) { links["createRole"] = new CreateRoleLink(Url, meta.RoleMetadata); } return(Ok(new { Data = data, Links = links })); }
public async Task<IHttpActionResult> Get() { var meta = await GetMetadataAsync(); var data = new Dictionary<string, object>(); var cp = (ClaimsPrincipal)User; var name = cp.Claims.Where(x => x.Type == Constants.ClaimTypes.Name).Select(x => x.Value).FirstOrDefault(); data.Add("currentUser", new { username = name }); var links = new Dictionary<string, object>(); links["users"] = Url.Link(Constants.RouteNames.GetUsers, null); if (meta.RoleMetadata.SupportsListing) { links["roles"] = Url.Link(Constants.RouteNames.GetRoles, null); } if (meta.UserMetadata.SupportsCreate) { links["createUser"] = new CreateUserLink(Url, meta.UserMetadata); } if (meta.RoleMetadata.SupportsCreate) { links["createRole"] = new CreateRoleLink(Url, meta.RoleMetadata); } return Ok(new { Data = data, Links = links }); }
public async Task <IHttpActionResult> Get() { var meta = await GetMetadataAsync(); var links = new Dictionary <string, object>(); links["users"] = Url.Link(Constants.RouteNames.GetUsers, null); if (meta.UserMetadata.SupportsCreate) { links["createUser"] = new CreateUserLink(Url, meta.UserMetadata); } var resource = new { Data = new { currentUser = new { username = User.Identity.Name } }, Links = links }; return(Ok(resource)); }