public bool CanUserAccessList(ClientPrincipal principal, string listId, ShareRole requiredRole = ShareRole.View) { var list = GetEntitiesForRowKey(listId).FirstOrDefault(); if (list == null) { throw new Exception("Could not find list"); } return(list.PartitionKey == principal.UserId || _todoListMemberService.CanUserAccessList(listId, principal.UserId, requiredRole)); }
public bool CanUserAccessList(string listId, string userId, ShareRole requiredRole) { var result = CloudTable.GetTableByPartitionAndRowKey <TodoListMemberEntity>(listId, userId); if (result == null) { return(false); } return(result.Role >= requiredRole); }