IDocumentClient.ReadPermissionAsync Method
Definition
Important
Some information relates to prerelease product that may be substantially modified before it’s released. Microsoft makes no warranties, express or implied, with respect to the information provided here.
Overloads
ReadPermissionAsync(String, RequestOptions) |
Reads a Permission from the Azure Cosmos DB service as an asynchronous operation. |
ReadPermissionAsync(Uri, RequestOptions) |
Reads a Permission resource as an asynchronous operation from the Azure Cosmos DB service. |
ReadPermissionAsync(String, RequestOptions)
Reads a Permission from the Azure Cosmos DB service as an asynchronous operation.
public System.Threading.Tasks.Task<Microsoft.Azure.Documents.Client.ResourceResponse<Microsoft.Azure.Documents.Permission>> ReadPermissionAsync (string permissionLink, Microsoft.Azure.Documents.Client.RequestOptions options = default);
abstract member ReadPermissionAsync : string * Microsoft.Azure.Documents.Client.RequestOptions -> System.Threading.Tasks.Task<Microsoft.Azure.Documents.Client.ResourceResponse<Microsoft.Azure.Documents.Permission>>
Public Function ReadPermissionAsync (permissionLink As String, Optional options As RequestOptions = Nothing) As Task(Of ResourceResponse(Of Permission))
Parameters
- permissionLink
- String
The link for the Permission resource to be read.
- options
- RequestOptions
(Optional) The request options for the request.
Returns
A System.Threading.Tasks containing a ResourceResponse<TResource> which wraps a Permission containing the read resource record.
Exceptions
If permissionLink
is not set.
This exception can encapsulate many different types of errors. To determine the specific error always look at the StatusCode property. Some common codes you may get when creating a Document are:
StatusCode | Reason for exception |
---|---|
404 | NotFound - This means the resource you tried to read did not exist. |
429 | TooManyRequests - This means you have exceeded the number of request units per second. Consult the DocumentClientException.RetryAfter value to see how long you should wait before retrying this operation. |
Examples
//Reads a Permission resource from a Database and User where
// - sample_database is the ID of the database
// - sample_user is the ID of the user
// - permission_id is the ID of the permission to be read
var permissionLink = "/dbs/sample_database/users/sample_user/permissions/permission_id";
Permission permission = await client.ReadPermissionAsync(permissionLink);
Remarks
Doing a read of a resource is the most efficient way to get a resource from the Database. If you know the resource's ID, do a read instead of a query by ID.
The example shown uses ID-based links, where the link is composed of the ID properties used when the resources were created. You can still use the SelfLink property of the Permission if you prefer. A self-link is a URI for a resource that is made up of Resource Identifiers (or the _rid properties). ID-based links and SelfLink will both work. The format for permissionLink
is always "/dbs/{db identifier}/users/{user identifier}/permissions/{permission identifier}" only the values within the {...} change depending on which method you wish to use to address the resource.
See also
Applies to
ReadPermissionAsync(Uri, RequestOptions)
Reads a Permission resource as an asynchronous operation from the Azure Cosmos DB service.
public System.Threading.Tasks.Task<Microsoft.Azure.Documents.Client.ResourceResponse<Microsoft.Azure.Documents.Permission>> ReadPermissionAsync (Uri permissionUri, Microsoft.Azure.Documents.Client.RequestOptions options = default);
abstract member ReadPermissionAsync : Uri * Microsoft.Azure.Documents.Client.RequestOptions -> System.Threading.Tasks.Task<Microsoft.Azure.Documents.Client.ResourceResponse<Microsoft.Azure.Documents.Permission>>
Public Function ReadPermissionAsync (permissionUri As Uri, Optional options As RequestOptions = Nothing) As Task(Of ResourceResponse(Of Permission))
Parameters
- permissionUri
- Uri
A URI to the Permission resource to be read.
- options
- RequestOptions
The request options for the request.
Returns
A System.Threading.Tasks containing a ResourceResponse<TResource> which wraps a Permission containing the read resource record.
Exceptions
If permissionUri
is not set.
This exception can encapsulate many different types of errors. To determine the specific error always look at the StatusCode property. Some common codes you may get when creating a Document are:
StatusCode | Reason for exception |
---|---|
404 | NotFound - This means the resource you tried to read did not exist. |
429 | TooManyRequests - This means you have exceeded the number of request units per second. Consult the DocumentClientException.RetryAfter value to see how long you should wait before retrying this operation. |
Examples
//Reads a Permission resource where
// - db_id is the ID property of the Database
// - user_id is the ID property of the User
// - permission_id is the ID property of the Permission you wish to read.
var permissionLink = UriFactory.CreatePermissionUri("db_id", "coll_id", "user_id");
Permission permission = await client.ReadPermissionAsync(permissionLink);
Remarks
Doing a read of a resource is the most efficient way to get a resource from the service. If you know the resource's ID, do a read instead of a query by ID.