1.2.0 (latest) 1.1.0 1.0.0

    public sealed class CryptoKeyName : IResourceName, IEquatable<CryptoKeyName>

Reference documentation and code samples for the Memorystore v1 API class CryptoKeyName.

Resource name for the `CryptoKey` resource.

## Inheritance

[object](https://learn.microsoft.com/dotnet/api/system.object) \> CryptoKeyName

## Implements

[IResourceName](https://cloud.google.com/dotnet/docs/reference/Google.Api.Gax/latest/Google.Api.Gax.IResourceName.html), [IEquatable](https://learn.microsoft.com/dotnet/api/system.iequatable-1)[CryptoKeyName](https://docs.cloud.google.com/dotnet/docs/reference/Google.Cloud.Memorystore.V1/latest/Google.Cloud.Memorystore.V1.CryptoKeyName)

## Inherited Members

[object.GetType()](https://learn.microsoft.com/dotnet/api/system.object.gettype)

## Namespace

[Google.Cloud.Memorystore.V1](https://docs.cloud.google.com/dotnet/docs/reference/Google.Cloud.Memorystore.V1/latest/Google.Cloud.Memorystore.V1)

## Assembly

Google.Cloud.Memorystore.V1.dll

## Constructors

### CryptoKeyName(string, string, string, string)

    public CryptoKeyName(string projectId, string locationId, string keyRingId, string cryptoKeyId)

Constructs a new instance of a [CryptoKeyName](https://docs.cloud.google.com/dotnet/docs/reference/Google.Cloud.Memorystore.V1/latest/Google.Cloud.Memorystore.V1.CryptoKeyName) class from the component parts of pattern
`projects/{project}/locations/{location}/keyRings/{key_ring}/cryptoKeys/{crypto_key}`

| **Parameters** ||
|---|---|
| **Name** | **Description** |
| `projectId` | `https://learn.microsoft.com/dotnet/api/system.string` The `Project` ID. Must not be `null` or empty. |
| `locationId` | `https://learn.microsoft.com/dotnet/api/system.string` The `Location` ID. Must not be `null` or empty. |
| `keyRingId` | `https://learn.microsoft.com/dotnet/api/system.string` The `KeyRing` ID. Must not be `null` or empty. |
| `cryptoKeyId` | `https://learn.microsoft.com/dotnet/api/system.string` The `CryptoKey` ID. Must not be `null` or empty. |

## Properties

### CryptoKeyId

    public string CryptoKeyId { get; }

The `CryptoKey` ID. Will not be `null`, unless this instance contains an unparsed resource name.

| **Property Value** ||
|---|---|
| **Type** | **Description** |
| `https://learn.microsoft.com/dotnet/api/system.string` |   |

### IsKnownPattern

    public bool IsKnownPattern { get; }

Whether this instance contains a resource name with a known pattern.

| **Property Value** ||
|---|---|
| **Type** | **Description** |
| `https://learn.microsoft.com/dotnet/api/system.boolean` |   |

### KeyRingId

    public string KeyRingId { get; }

The `KeyRing` ID. Will not be `null`, unless this instance contains an unparsed resource name.

| **Property Value** ||
|---|---|
| **Type** | **Description** |
| `https://learn.microsoft.com/dotnet/api/system.string` |   |

### LocationId

    public string LocationId { get; }

The `Location` ID. Will not be `null`, unless this instance contains an unparsed resource name.

| **Property Value** ||
|---|---|
| **Type** | **Description** |
| `https://learn.microsoft.com/dotnet/api/system.string` |   |

### ProjectId

    public string ProjectId { get; }

The `Project` ID. Will not be `null`, unless this instance contains an unparsed resource name.

| **Property Value** ||
|---|---|
| **Type** | **Description** |
| `https://learn.microsoft.com/dotnet/api/system.string` |   |

### Type

    public CryptoKeyName.ResourceNameType Type { get; }

The [CryptoKeyName.ResourceNameType](https://docs.cloud.google.com/dotnet/docs/reference/Google.Cloud.Memorystore.V1/latest/Google.Cloud.Memorystore.V1.CryptoKeyName.ResourceNameType) of the contained resource name.

| **Property Value** ||
|---|---|
| **Type** | **Description** |
| `https://docs.cloud.google.com/dotnet/docs/reference/Google.Cloud.Memorystore.V1/latest/Google.Cloud.Memorystore.V1.CryptoKeyNamehttps://docs.cloud.google.com/dotnet/docs/reference/Google.Cloud.Memorystore.V1/latest/Google.Cloud.Memorystore.V1.CryptoKeyName.ResourceNameType` |   |

### UnparsedResource

    public UnparsedResourceName UnparsedResource { get; }

The contained [UnparsedResourceName](https://cloud.google.com/dotnet/docs/reference/Google.Api.Gax/latest/Google.Api.Gax.UnparsedResourceName.html). Only non-`null` if this instance contains an
unparsed resource name.

| **Property Value** ||
|---|---|
| **Type** | **Description** |
| `https://cloud.google.com/dotnet/docs/reference/Google.Api.Gax/latest/Google.Api.Gax.UnparsedResourceName.html` |   |

## Methods

### Format(string, string, string, string)

    public static string Format(string projectId, string locationId, string keyRingId, string cryptoKeyId)

Formats the IDs into the string representation of this [CryptoKeyName](https://docs.cloud.google.com/dotnet/docs/reference/Google.Cloud.Memorystore.V1/latest/Google.Cloud.Memorystore.V1.CryptoKeyName) with pattern
`projects/{project}/locations/{location}/keyRings/{key_ring}/cryptoKeys/{crypto_key}`.

| **Parameters** ||
|---|---|
| **Name** | **Description** |
| `projectId` | `https://learn.microsoft.com/dotnet/api/system.string` The `Project` ID. Must not be `null` or empty. |
| `locationId` | `https://learn.microsoft.com/dotnet/api/system.string` The `Location` ID. Must not be `null` or empty. |
| `keyRingId` | `https://learn.microsoft.com/dotnet/api/system.string` The `KeyRing` ID. Must not be `null` or empty. |
| `cryptoKeyId` | `https://learn.microsoft.com/dotnet/api/system.string` The `CryptoKey` ID. Must not be `null` or empty. |

| **Returns** ||
|---|---|
| **Type** | **Description** |
| `https://learn.microsoft.com/dotnet/api/system.string` | The string representation of this [CryptoKeyName](https://docs.cloud.google.com/dotnet/docs/reference/Google.Cloud.Memorystore.V1/latest/Google.Cloud.Memorystore.V1.CryptoKeyName) with pattern `projects/{project}/locations/{location}/keyRings/{key_ring}/cryptoKeys/{crypto_key}`. |

### FormatProjectLocationKeyRingCryptoKey(string, string, string, string)

    public static string FormatProjectLocationKeyRingCryptoKey(string projectId, string locationId, string keyRingId, string cryptoKeyId)

Formats the IDs into the string representation of this [CryptoKeyName](https://docs.cloud.google.com/dotnet/docs/reference/Google.Cloud.Memorystore.V1/latest/Google.Cloud.Memorystore.V1.CryptoKeyName) with pattern
`projects/{project}/locations/{location}/keyRings/{key_ring}/cryptoKeys/{crypto_key}`.

| **Parameters** ||
|---|---|
| **Name** | **Description** |
| `projectId` | `https://learn.microsoft.com/dotnet/api/system.string` The `Project` ID. Must not be `null` or empty. |
| `locationId` | `https://learn.microsoft.com/dotnet/api/system.string` The `Location` ID. Must not be `null` or empty. |
| `keyRingId` | `https://learn.microsoft.com/dotnet/api/system.string` The `KeyRing` ID. Must not be `null` or empty. |
| `cryptoKeyId` | `https://learn.microsoft.com/dotnet/api/system.string` The `CryptoKey` ID. Must not be `null` or empty. |

| **Returns** ||
|---|---|
| **Type** | **Description** |
| `https://learn.microsoft.com/dotnet/api/system.string` | The string representation of this [CryptoKeyName](https://docs.cloud.google.com/dotnet/docs/reference/Google.Cloud.Memorystore.V1/latest/Google.Cloud.Memorystore.V1.CryptoKeyName) with pattern `projects/{project}/locations/{location}/keyRings/{key_ring}/cryptoKeys/{crypto_key}`. |

### FromProjectLocationKeyRingCryptoKey(string, string, string, string)

    public static CryptoKeyName FromProjectLocationKeyRingCryptoKey(string projectId, string locationId, string keyRingId, string cryptoKeyId)

Creates a [CryptoKeyName](https://docs.cloud.google.com/dotnet/docs/reference/Google.Cloud.Memorystore.V1/latest/Google.Cloud.Memorystore.V1.CryptoKeyName) with the pattern
`projects/{project}/locations/{location}/keyRings/{key_ring}/cryptoKeys/{crypto_key}`.

| **Parameters** ||
|---|---|
| **Name** | **Description** |
| `projectId` | `https://learn.microsoft.com/dotnet/api/system.string` The `Project` ID. Must not be `null` or empty. |
| `locationId` | `https://learn.microsoft.com/dotnet/api/system.string` The `Location` ID. Must not be `null` or empty. |
| `keyRingId` | `https://learn.microsoft.com/dotnet/api/system.string` The `KeyRing` ID. Must not be `null` or empty. |
| `cryptoKeyId` | `https://learn.microsoft.com/dotnet/api/system.string` The `CryptoKey` ID. Must not be `null` or empty. |

| **Returns** ||
|---|---|
| **Type** | **Description** |
| `https://docs.cloud.google.com/dotnet/docs/reference/Google.Cloud.Memorystore.V1/latest/Google.Cloud.Memorystore.V1.CryptoKeyName` | A new instance of [CryptoKeyName](https://docs.cloud.google.com/dotnet/docs/reference/Google.Cloud.Memorystore.V1/latest/Google.Cloud.Memorystore.V1.CryptoKeyName) constructed from the provided ids. |

### FromUnparsed(UnparsedResourceName)

    public static CryptoKeyName FromUnparsed(UnparsedResourceName unparsedResourceName)

Creates a [CryptoKeyName](https://docs.cloud.google.com/dotnet/docs/reference/Google.Cloud.Memorystore.V1/latest/Google.Cloud.Memorystore.V1.CryptoKeyName) containing an unparsed resource name.

| **Parameter** ||
|---|---|
| **Name** | **Description** |
| `unparsedResourceName` | `https://cloud.google.com/dotnet/docs/reference/Google.Api.Gax/latest/Google.Api.Gax.UnparsedResourceName.html` The unparsed resource name. Must not be `null`. |

| **Returns** ||
|---|---|
| **Type** | **Description** |
| `https://docs.cloud.google.com/dotnet/docs/reference/Google.Cloud.Memorystore.V1/latest/Google.Cloud.Memorystore.V1.CryptoKeyName` | A new instance of [CryptoKeyName](https://docs.cloud.google.com/dotnet/docs/reference/Google.Cloud.Memorystore.V1/latest/Google.Cloud.Memorystore.V1.CryptoKeyName) containing the provided `unparsedResourceName`. |

### GetHashCode()

    public override int GetHashCode()

Returns a hash code for this resource name.

| **Returns** ||
|---|---|
| **Type** | **Description** |
| `https://learn.microsoft.com/dotnet/api/system.int32` |   |

**Overrides** [object.GetHashCode()](https://learn.microsoft.com/dotnet/api/system.object.gethashcode)

### Parse(string)

    public static CryptoKeyName Parse(string cryptoKeyName)

Parses the given resource name string into a new [CryptoKeyName](https://docs.cloud.google.com/dotnet/docs/reference/Google.Cloud.Memorystore.V1/latest/Google.Cloud.Memorystore.V1.CryptoKeyName) instance.

| **Parameter** ||
|---|---|
| **Name** | **Description** |
| `cryptoKeyName` | `https://learn.microsoft.com/dotnet/api/system.string` The resource name in string form. Must not be `null`. |

| **Returns** ||
|---|---|
| **Type** | **Description** |
| `https://docs.cloud.google.com/dotnet/docs/reference/Google.Cloud.Memorystore.V1/latest/Google.Cloud.Memorystore.V1.CryptoKeyName` | The parsed [CryptoKeyName](https://docs.cloud.google.com/dotnet/docs/reference/Google.Cloud.Memorystore.V1/latest/Google.Cloud.Memorystore.V1.CryptoKeyName) if successful. |

**Remarks** To parse successfully, the resource name must be formatted as one of the following:

- `projects/{project}/locations/{location}/keyRings/{key_ring}/cryptoKeys/{crypto_key}`

### Parse(string, bool)

    public static CryptoKeyName Parse(string cryptoKeyName, bool allowUnparsed)

Parses the given resource name string into a new [CryptoKeyName](https://docs.cloud.google.com/dotnet/docs/reference/Google.Cloud.Memorystore.V1/latest/Google.Cloud.Memorystore.V1.CryptoKeyName) instance; optionally allowing
an unparseable resource name.

| **Parameters** ||
|---|---|
| **Name** | **Description** |
| `cryptoKeyName` | `https://learn.microsoft.com/dotnet/api/system.string` The resource name in string form. Must not be `null`. |
| `allowUnparsed` | `https://learn.microsoft.com/dotnet/api/system.boolean` If `true` will successfully store an unparseable resource name into the [UnparsedResource](https://docs.cloud.google.com/dotnet/docs/reference/Google.Cloud.Memorystore.V1/latest/Google.Cloud.Memorystore.V1.CryptoKeyName#Google_Cloud_Memorystore_V1_CryptoKeyName_UnparsedResource) property; otherwise will throw an [ArgumentException](https://learn.microsoft.com/dotnet/api/system.argumentexception) if an unparseable resource name is specified. |

| **Returns** ||
|---|---|
| **Type** | **Description** |
| `https://docs.cloud.google.com/dotnet/docs/reference/Google.Cloud.Memorystore.V1/latest/Google.Cloud.Memorystore.V1.CryptoKeyName` | The parsed [CryptoKeyName](https://docs.cloud.google.com/dotnet/docs/reference/Google.Cloud.Memorystore.V1/latest/Google.Cloud.Memorystore.V1.CryptoKeyName) if successful. |

**Remarks** To parse successfully, the resource name must be formatted as one of the following:

- `projects/{project}/locations/{location}/keyRings/{key_ring}/cryptoKeys/{crypto_key}`

Or may be in any format if `allowUnparsed` is `true`.

### ToString()

    public override string ToString()

The string representation of the resource name.

| **Returns** ||
|---|---|
| **Type** | **Description** |
| `https://learn.microsoft.com/dotnet/api/system.string` | The string representation of the resource name. |

**Overrides** [object.ToString()](https://learn.microsoft.com/dotnet/api/system.object.tostring)

### TryParse(string, out CryptoKeyName)

    public static bool TryParse(string cryptoKeyName, out CryptoKeyName result)

Tries to parse the given resource name string into a new [CryptoKeyName](https://docs.cloud.google.com/dotnet/docs/reference/Google.Cloud.Memorystore.V1/latest/Google.Cloud.Memorystore.V1.CryptoKeyName) instance.

| **Parameters** ||
|---|---|
| **Name** | **Description** |
| `cryptoKeyName` | `https://learn.microsoft.com/dotnet/api/system.string` The resource name in string form. Must not be `null`. |
| `result` | `https://docs.cloud.google.com/dotnet/docs/reference/Google.Cloud.Memorystore.V1/latest/Google.Cloud.Memorystore.V1.CryptoKeyName` When this method returns, the parsed [CryptoKeyName](https://docs.cloud.google.com/dotnet/docs/reference/Google.Cloud.Memorystore.V1/latest/Google.Cloud.Memorystore.V1.CryptoKeyName), or `null` if parsing failed. |

| **Returns** ||
|---|---|
| **Type** | **Description** |
| `https://learn.microsoft.com/dotnet/api/system.boolean` | `true` if the name was parsed successfully; `false` otherwise. |

**Remarks** To parse successfully, the resource name must be formatted as one of the following:

- `projects/{project}/locations/{location}/keyRings/{key_ring}/cryptoKeys/{crypto_key}`

### TryParse(string, bool, out CryptoKeyName)

    public static bool TryParse(string cryptoKeyName, bool allowUnparsed, out CryptoKeyName result)

Tries to parse the given resource name string into a new [CryptoKeyName](https://docs.cloud.google.com/dotnet/docs/reference/Google.Cloud.Memorystore.V1/latest/Google.Cloud.Memorystore.V1.CryptoKeyName) instance; optionally
allowing an unparseable resource name.

| **Parameters** ||
|---|---|
| **Name** | **Description** |
| `cryptoKeyName` | `https://learn.microsoft.com/dotnet/api/system.string` The resource name in string form. Must not be `null`. |
| `allowUnparsed` | `https://learn.microsoft.com/dotnet/api/system.boolean` If `true` will successfully store an unparseable resource name into the [UnparsedResource](https://docs.cloud.google.com/dotnet/docs/reference/Google.Cloud.Memorystore.V1/latest/Google.Cloud.Memorystore.V1.CryptoKeyName#Google_Cloud_Memorystore_V1_CryptoKeyName_UnparsedResource) property; otherwise will throw an [ArgumentException](https://learn.microsoft.com/dotnet/api/system.argumentexception) if an unparseable resource name is specified. |
| `result` | `https://docs.cloud.google.com/dotnet/docs/reference/Google.Cloud.Memorystore.V1/latest/Google.Cloud.Memorystore.V1.CryptoKeyName` When this method returns, the parsed [CryptoKeyName](https://docs.cloud.google.com/dotnet/docs/reference/Google.Cloud.Memorystore.V1/latest/Google.Cloud.Memorystore.V1.CryptoKeyName), or `null` if parsing failed. |

| **Returns** ||
|---|---|
| **Type** | **Description** |
| `https://learn.microsoft.com/dotnet/api/system.boolean` | `true` if the name was parsed successfully; `false` otherwise. |

**Remarks** To parse successfully, the resource name must be formatted as one of the following:

- `projects/{project}/locations/{location}/keyRings/{key_ring}/cryptoKeys/{crypto_key}`

Or may be in any format if `allowUnparsed` is `true`.

## Operators

### operator ==(CryptoKeyName, CryptoKeyName)

    public static bool operator ==(CryptoKeyName a, CryptoKeyName b)

Determines whether two specified resource names have the same value.

| **Parameters** ||
|---|---|
| **Name** | **Description** |
| `a` | `https://docs.cloud.google.com/dotnet/docs/reference/Google.Cloud.Memorystore.V1/latest/Google.Cloud.Memorystore.V1.CryptoKeyName` The first resource name to compare, or null. |
| `b` | `https://docs.cloud.google.com/dotnet/docs/reference/Google.Cloud.Memorystore.V1/latest/Google.Cloud.Memorystore.V1.CryptoKeyName` The second resource name to compare, or null. |

| **Returns** ||
|---|---|
| **Type** | **Description** |
| `https://learn.microsoft.com/dotnet/api/system.boolean` | true if the value of `a` is the same as the value of `b`; otherwise, false. |

### operator !=(CryptoKeyName, CryptoKeyName)

    public static bool operator !=(CryptoKeyName a, CryptoKeyName b)

Determines whether two specified resource names have different values.

| **Parameters** ||
|---|---|
| **Name** | **Description** |
| `a` | `https://docs.cloud.google.com/dotnet/docs/reference/Google.Cloud.Memorystore.V1/latest/Google.Cloud.Memorystore.V1.CryptoKeyName` The first resource name to compare, or null. |
| `b` | `https://docs.cloud.google.com/dotnet/docs/reference/Google.Cloud.Memorystore.V1/latest/Google.Cloud.Memorystore.V1.CryptoKeyName` The second resource name to compare, or null. |

| **Returns** ||
|---|---|
| **Type** | **Description** |
| `https://learn.microsoft.com/dotnet/api/system.boolean` | true if the value of `a` is different from the value of `b`; otherwise, false. |