If true will successfully store an unparseable resource name into the UnparsedResource
property; otherwise will throw an ArgumentException if an unparseable resource name is
specified.
If true will successfully store an unparseable resource name into the UnparsedResource
property; otherwise will throw an ArgumentException if an unparseable resource name is
specified.
[[["Easy to understand","easyToUnderstand","thumb-up"],["Solved my problem","solvedMyProblem","thumb-up"],["Other","otherUp","thumb-up"]],[["Missing the information I need","missingTheInformationINeed","thumb-down"],["Too complicated / too many steps","tooComplicatedTooManySteps","thumb-down"],["Out of date","outOfDate","thumb-down"],["Samples / code issue","samplesCodeIssue","thumb-down"],["Other","otherDown","thumb-down"]],["Last updated 2025-08-07 UTC."],[[["\u003cp\u003e\u003ccode\u003eSourceName\u003c/code\u003e is a class in the Google Cloud Security Command Center v1p1beta1 API that represents the resource name for a \u003ccode\u003eSource\u003c/code\u003e resource, implementing \u003ccode\u003eIResourceName\u003c/code\u003e and \u003ccode\u003eIEquatable<SourceName>\u003c/code\u003e.\u003c/p\u003e\n"],["\u003cp\u003eThe \u003ccode\u003eSourceName\u003c/code\u003e class can be constructed from component parts such as \u003ccode\u003eorganizationId\u003c/code\u003e and \u003ccode\u003esourceId\u003c/code\u003e, or by parsing a string representation of the resource name, adhering to patterns like \u003ccode\u003eorganizations/{organization}/sources/{source}\u003c/code\u003e.\u003c/p\u003e\n"],["\u003cp\u003eIt offers methods to format resource names from IDs, create new \u003ccode\u003eSourceName\u003c/code\u003e instances, and parse or try to parse resource name strings, including handling unparsed names.\u003c/p\u003e\n"],["\u003cp\u003eThe class includes properties like \u003ccode\u003eOrganizationId\u003c/code\u003e, \u003ccode\u003eSourceId\u003c/code\u003e, \u003ccode\u003eFolderId\u003c/code\u003e, \u003ccode\u003eProjectId\u003c/code\u003e, and \u003ccode\u003eType\u003c/code\u003e, to access specific parts of the resource name, along with methods to check if the pattern is known and an unparsed version is available.\u003c/p\u003e\n"],["\u003cp\u003eThe \u003ccode\u003eSourceName\u003c/code\u003e class also includes overriden methods to compare two resources or get their hash code, as well as determine if it can be parsed and return the result if parsing is succesful.\u003c/p\u003e\n"]]],[],null,["# Google Cloud Security Command Center v1p1beta1 API - Class SourceName (3.0.0-beta05)\n\nVersion latestkeyboard_arrow_down\n\n- [3.0.0-beta05 (latest)](/dotnet/docs/reference/Google.Cloud.SecurityCenter.V1P1Beta1/latest/Google.Cloud.SecurityCenter.V1P1Beta1.SourceName)\n- [3.0.0-beta04](/dotnet/docs/reference/Google.Cloud.SecurityCenter.V1P1Beta1/3.0.0-beta04/Google.Cloud.SecurityCenter.V1P1Beta1.SourceName)\n- [2.0.0-beta07](/dotnet/docs/reference/Google.Cloud.SecurityCenter.V1P1Beta1/2.0.0-beta07/Google.Cloud.SecurityCenter.V1P1Beta1.SourceName) \n\n public sealed class SourceName : IResourceName, IEquatable\u003cSourceName\u003e\n\nReference documentation and code samples for the Google Cloud Security Command Center v1p1beta1 API class SourceName.\n\nResource name for the `Source` resource. \n\nInheritance\n-----------\n\n[object](https://learn.microsoft.com/dotnet/api/system.object) \\\u003e SourceName \n\nImplements\n----------\n\n[IResourceName](https://github.com/googleapis/gax-dotnet/blob/83f42b5edc4529818dbdb34d9ea9ecc3c04f7b6e/Google.Api.Gax/IResourceName.cs), [IEquatable](https://learn.microsoft.com/dotnet/api/system.iequatable-1)[SourceName](/dotnet/docs/reference/Google.Cloud.SecurityCenter.V1P1Beta1/latest/Google.Cloud.SecurityCenter.V1P1Beta1.SourceName) \n\nInherited Members\n-----------------\n\n[object.GetType()](https://learn.microsoft.com/dotnet/api/system.object.gettype)\n\nNamespace\n---------\n\n[Google.Cloud.SecurityCenter.V1P1Beta1](/dotnet/docs/reference/Google.Cloud.SecurityCenter.V1P1Beta1/latest/Google.Cloud.SecurityCenter.V1P1Beta1)\n\nAssembly\n--------\n\nGoogle.Cloud.SecurityCenter.V1P1Beta1.dll\n\nConstructors\n------------\n\n### SourceName(string, string)\n\n public SourceName(string organizationId, string sourceId)\n\nConstructs a new instance of a [SourceName](/dotnet/docs/reference/Google.Cloud.SecurityCenter.V1P1Beta1/latest/Google.Cloud.SecurityCenter.V1P1Beta1.SourceName) class from the component parts of pattern\n`organizations/{organization}/sources/{source}`\n\nProperties\n----------\n\n### FolderId\n\n public string FolderId { get; }\n\nThe `Folder` ID. May be `null`, depending on which resource name is contained by this instance.\n\n### IsKnownPattern\n\n public bool IsKnownPattern { get; }\n\nWhether this instance contains a resource name with a known pattern.\n\n### OrganizationId\n\n public string OrganizationId { get; }\n\nThe `Organization` ID. May be `null`, depending on which resource name is contained by this\ninstance.\n\n### ProjectId\n\n public string ProjectId { get; }\n\nThe `Project` ID. May be `null`, depending on which resource name is contained by this instance.\n\n### SourceId\n\n public string SourceId { get; }\n\nThe `Source` ID. May be `null`, depending on which resource name is contained by this instance.\n\n### Type\n\n public SourceName.ResourceNameType Type { get; }\n\nThe [SourceName.ResourceNameType](/dotnet/docs/reference/Google.Cloud.SecurityCenter.V1P1Beta1/latest/Google.Cloud.SecurityCenter.V1P1Beta1.SourceName.ResourceNameType) of the contained resource name.\n\n### UnparsedResource\n\n public UnparsedResourceName UnparsedResource { get; }\n\nThe contained [UnparsedResourceName](https://github.com/googleapis/gax-dotnet/blob/83f42b5edc4529818dbdb34d9ea9ecc3c04f7b6e/Google.Api.Gax/UnparsedResourceName.cs). Only non-`null` if this instance contains an\nunparsed resource name.\n\nMethods\n-------\n\n### Format(string, string)\n\n public static string Format(string organizationId, string sourceId)\n\nFormats the IDs into the string representation of this [SourceName](/dotnet/docs/reference/Google.Cloud.SecurityCenter.V1P1Beta1/latest/Google.Cloud.SecurityCenter.V1P1Beta1.SourceName) with pattern\n`organizations/{organization}/sources/{source}`.\n\n### FormatFolderSource(string, string)\n\n public static string FormatFolderSource(string folderId, string sourceId)\n\nFormats the IDs into the string representation of this [SourceName](/dotnet/docs/reference/Google.Cloud.SecurityCenter.V1P1Beta1/latest/Google.Cloud.SecurityCenter.V1P1Beta1.SourceName) with pattern\n`folders/{folder}/sources/{source}`.\n\n### FormatOrganizationSource(string, string)\n\n public static string FormatOrganizationSource(string organizationId, string sourceId)\n\nFormats the IDs into the string representation of this [SourceName](/dotnet/docs/reference/Google.Cloud.SecurityCenter.V1P1Beta1/latest/Google.Cloud.SecurityCenter.V1P1Beta1.SourceName) with pattern\n`organizations/{organization}/sources/{source}`.\n\n### FormatProjectSource(string, string)\n\n public static string FormatProjectSource(string projectId, string sourceId)\n\nFormats the IDs into the string representation of this [SourceName](/dotnet/docs/reference/Google.Cloud.SecurityCenter.V1P1Beta1/latest/Google.Cloud.SecurityCenter.V1P1Beta1.SourceName) with pattern\n`projects/{project}/sources/{source}`.\n\n### FromFolderSource(string, string)\n\n public static SourceName FromFolderSource(string folderId, string sourceId)\n\nCreates a [SourceName](/dotnet/docs/reference/Google.Cloud.SecurityCenter.V1P1Beta1/latest/Google.Cloud.SecurityCenter.V1P1Beta1.SourceName) with the pattern `folders/{folder}/sources/{source}`.\n\n### FromOrganizationSource(string, string)\n\n public static SourceName FromOrganizationSource(string organizationId, string sourceId)\n\nCreates a [SourceName](/dotnet/docs/reference/Google.Cloud.SecurityCenter.V1P1Beta1/latest/Google.Cloud.SecurityCenter.V1P1Beta1.SourceName) with the pattern `organizations/{organization}/sources/{source}`.\n\n### FromProjectSource(string, string)\n\n public static SourceName FromProjectSource(string projectId, string sourceId)\n\nCreates a [SourceName](/dotnet/docs/reference/Google.Cloud.SecurityCenter.V1P1Beta1/latest/Google.Cloud.SecurityCenter.V1P1Beta1.SourceName) with the pattern `projects/{project}/sources/{source}`.\n\n### FromUnparsed(UnparsedResourceName)\n\n public static SourceName FromUnparsed(UnparsedResourceName unparsedResourceName)\n\nCreates a [SourceName](/dotnet/docs/reference/Google.Cloud.SecurityCenter.V1P1Beta1/latest/Google.Cloud.SecurityCenter.V1P1Beta1.SourceName) containing an unparsed resource name.\n\n### GetHashCode()\n\n public override int GetHashCode()\n\nReturns a hash code for this resource name.\n\n**Overrides** \n[object.GetHashCode()](https://learn.microsoft.com/dotnet/api/system.object.gethashcode)\n\n### Parse(string)\n\n public static SourceName Parse(string sourceName)\n\nParses the given resource name string into a new [SourceName](/dotnet/docs/reference/Google.Cloud.SecurityCenter.V1P1Beta1/latest/Google.Cloud.SecurityCenter.V1P1Beta1.SourceName) instance.\n\n**Remarks** \nTo parse successfully, the resource name must be formatted as one of the following:\n\n- `organizations/{organization}/sources/{source}`\n- `folders/{folder}/sources/{source}`\n- `projects/{project}/sources/{source}`\n\n\u003cbr /\u003e\n\n### Parse(string, bool)\n\n public static SourceName Parse(string sourceName, bool allowUnparsed)\n\nParses the given resource name string into a new [SourceName](/dotnet/docs/reference/Google.Cloud.SecurityCenter.V1P1Beta1/latest/Google.Cloud.SecurityCenter.V1P1Beta1.SourceName) instance; optionally allowing an\nunparseable resource name.\n\n**Remarks** \nTo parse successfully, the resource name must be formatted as one of the following:\n\n- `organizations/{organization}/sources/{source}`\n- `folders/{folder}/sources/{source}`\n- `projects/{project}/sources/{source}`\n\nOr may be in any format if `allowUnparsed` is `true`.\n\n\u003cbr /\u003e\n\n### ToString()\n\n public override string ToString()\n\nThe string representation of the resource name.\n\n**Overrides** \n[object.ToString()](https://learn.microsoft.com/dotnet/api/system.object.tostring)\n\n### TryParse(string, out SourceName)\n\n public static bool TryParse(string sourceName, out SourceName result)\n\nTries to parse the given resource name string into a new [SourceName](/dotnet/docs/reference/Google.Cloud.SecurityCenter.V1P1Beta1/latest/Google.Cloud.SecurityCenter.V1P1Beta1.SourceName) instance.\n\n**Remarks** \nTo parse successfully, the resource name must be formatted as one of the following:\n\n- `organizations/{organization}/sources/{source}`\n- `folders/{folder}/sources/{source}`\n- `projects/{project}/sources/{source}`\n\n\u003cbr /\u003e\n\n### TryParse(string, bool, out SourceName)\n\n public static bool TryParse(string sourceName, bool allowUnparsed, out SourceName result)\n\nTries to parse the given resource name string into a new [SourceName](/dotnet/docs/reference/Google.Cloud.SecurityCenter.V1P1Beta1/latest/Google.Cloud.SecurityCenter.V1P1Beta1.SourceName) instance; optionally\nallowing an unparseable resource name.\n\n**Remarks** \nTo parse successfully, the resource name must be formatted as one of the following:\n\n- `organizations/{organization}/sources/{source}`\n- `folders/{folder}/sources/{source}`\n- `projects/{project}/sources/{source}`\n\nOr may be in any format if `allowUnparsed` is `true`.\n\n\u003cbr /\u003e\n\nOperators\n---------\n\n### operator ==(SourceName, SourceName)\n\n public static bool operator ==(SourceName a, SourceName b)\n\nDetermines whether two specified resource names have the same value.\n\n### operator !=(SourceName, SourceName)\n\n public static bool operator !=(SourceName a, SourceName b)\n\nDetermines whether two specified resource names have different values."]]