Google Cloud Datastore v1 API - Class Key (4.11.0)

public sealed class Key : IMessage<Key>, IEquatable<Key>, IDeepCloneable<Key>, IBufferMessage, IMessage

Reference documentation and code samples for the Google Cloud Datastore v1 API class Key.

A unique identifier for an entity. If a key's partition ID or any of its path kinds or names are reserved/read-only, the key is reserved/read-only. A reserved/read-only key is forbidden in certain documented contexts.

Inheritance

object > Key

Namespace

Google.Cloud.Datastore.V1

Assembly

Google.Cloud.Datastore.V1.dll

Constructors

Key()

public Key()

Key(Key)

public Key(Key other)
Parameter
Name Description
other Key

Properties

IsRoot

public bool IsRoot { get; }

Convenience property to determine whether this key is a root or not. A root key is one whose Path is empty.

Property Value
Type Description
bool

PartitionId

public PartitionId PartitionId { get; set; }

Entities are partitioned into subsets, currently identified by a project ID and namespace ID. Queries are scoped to a single partition.

Property Value
Type Description
PartitionId

Path

public RepeatedField<Key.Types.PathElement> Path { get; }

The entity path. An entity path consists of one or more elements composed of a kind and a string or numerical identifier, which identify entities. The first element identifies a root entity, the second element identifies a child of the root entity, the third element identifies a child of the second entity, and so forth. The entities identified by all prefixes of the path are called the element's ancestors.

An entity path is always fully complete: all of the entity's ancestors are required to be in the path along with the entity identifier itself. The only exception is that in some documented cases, the identifier in the last path element (for the entity) itself may be omitted. For example, the last path element of the key of Mutation.insert may have no identifier.

A path can never be empty, and a path can have at most 100 elements.

Property Value
Type Description
RepeatedFieldKeyTypesPathElement

Methods

GetParent()

public Key GetParent()

Constructs a clone of this key and removes the final path element.

Returns
Type Description
Key

The parent key to this key.

Exceptions
Type Description
InvalidOperationException

This key is a "root" key with an empty path.

ToDelete()

public Mutation ToDelete()

Creates a new mutation representing a delete of this key.

Returns
Type Description
Mutation

WithElement(PathElement)

public Key WithElement(Key.Types.PathElement pathElement)

Creates a clone of this key and appends the specified path element to the clone.

Parameter
Name Description
pathElement KeyTypesPathElement

The path element to append. Must not be null.

Returns
Type Description
Key

A clone of this key, with the specified path element.

WithElement(string, long)

public Key WithElement(string kind, long id)

Creates a clone of this key and appends a new path element with the specified kind and ID to the clone.

Parameters
Name Description
kind string

The kind of path element to append. Must not be null.

id long

The ID of the path element to append.

Returns
Type Description
Key

A clone of this key, with the specified path element.

WithElement(string, string)

public Key WithElement(string kind, string name)

Creates a clone of this key and appends a new path element with the specified kind and name to the clone.

Parameters
Name Description
kind string

The kind of path element to append. Must not be null.

name string

The name of the path element to append. Must not be null.

Returns
Type Description
Key

A clone of this key, with the specified path element.