Share via


GraphNodeId 類別

GraphNodeId 是名稱/值組,例如 "a=b"。 這個識別項 (「a」) 會以 GraphNodeIdName 代表呼叫名稱和右邊, 「b」為「value」組件的左側。GraphNodeId 的值部分可以是下列其中一項:* String * Uri * GraphNodeId * GraphNodeIdCollection。 因為值可以是 GraphNodeId 或 GraphNodeIdCollection,我們可以使用括號 "()」指定巢狀:也就是說, a= (b=c) a= (b=c d=e) (a=b c=d)。 建構一個巢狀 GraphNodeId 清單 (a=b c=d),建立 GraphNodeIdCollection 並將它指派給 GraphNodeId:

GraphNodeId.Get (GraphNodeIdName.Nested, new GraphNodeIdCollection (GraphNodeId.Get (MyGraphNodeIdNames.a, 「b」) GraphNodeId.Get (MyGraphNodeIdNames.c, 「d」));

您可以使用下列簡單數學運算,您也可以建立此 GraphNodeId:

GraphNodeId ab = GraphNodeId.Get (「(a=b」);

GraphNodeId abcd = ab + 「(c=d)」;

//(產生 (a=b c=d)

結果可以轉換成字串使用 ToString() 或隱含字串轉型運算子,並產生「(a=b c=d)」。

由於 GraphNodeIds HashSet 是在已儲存的平台,請使用運算子 ==,加以比較。

繼承階層架構

Object
  Microsoft.VisualStudio.GraphModel.GraphNodeId

命名空間:  Microsoft.VisualStudio.GraphModel
組件:  Microsoft.VisualStudio.GraphModel (在 Microsoft.VisualStudio.GraphModel.dll 中)

語法

'宣告
<SerializableAttribute> _
<TypeConverterAttribute(GetType(GraphNodeIdConverter))> _
Public Class GraphNodeId _
    Implements IEquatable(Of GraphNodeId), IComparable(Of GraphNodeId),  _
    IComparable
[SerializableAttribute]
[TypeConverterAttribute(typeof(GraphNodeIdConverter))]
public class GraphNodeId : IEquatable<GraphNodeId>, 
    IComparable<GraphNodeId>, IComparable
[SerializableAttribute]
[TypeConverterAttribute(typeof(GraphNodeIdConverter))]
public ref class GraphNodeId : IEquatable<GraphNodeId^>, 
    IComparable<GraphNodeId^>, IComparable
[<SerializableAttribute>]
[<TypeConverterAttribute(typeof(GraphNodeIdConverter))>]
type GraphNodeId =  
    class 
        interface IEquatable<GraphNodeId>
        interface IComparable<GraphNodeId>
        interface IComparable 
    end
public class GraphNodeId implements IEquatable<GraphNodeId>, IComparable<GraphNodeId>, IComparable

GraphNodeId 類型會公開下列成員。

屬性

  名稱 描述
公用屬性靜態成員 Empty
公用屬性 LiteralValue 取得 GraphNodeId 的常值。如果 GraphNodeIdName 是文字,請使用名稱;否則 ToString 的委派。
公用屬性 Name GraphNodeIdName。
公用屬性 Value GraphNodeId 的值。這可以是:* String * Uri * GraphNodeId * GraphNodeIdCollection。

回頁首

方法

  名稱 描述
公用方法 Add 加入 GraphNodeId。如果此識別項已經是陣列,則會將項目加入陣列中。否則會傳回新的內嵌陣列。
公用方法 AppendToString 將 GraphNodeId 的 "ToString" 附加至 StringBuilder。因為 GraphNodeId 可以重複使用 StringBuilder,這比呼叫 ToString 有效率。
公用方法 CompareTo(Object) 對另一個 GraphNodeId 的比較。
公用方法 CompareTo(GraphNodeId) 對另一個 GraphNodeId 的比較。
公用方法 Equals 請參閱這個 GraphNodeId 是否符合 GraphNodeId 或 GraphNodeIdKey。 (覆寫 Object.Equals(Object)。)
受保護的方法 Finalize 在記憶體回收開始前,允許物件嘗試釋放資源,並執行其他清除作業。 (繼承自 Object)。
公用方法靜態成員 GetArray(GraphNodeIdName, array<GraphNodeId[]) 會根據指定的陣列名稱和識別項的部分 GraphNodeId。
公用方法靜態成員 GetArray(GraphNodeIdName, Object) 根據名稱及值取得 GraphNodeId。針對 Dictionary 進行查閱以盡量減少周圍 GraphNodeId 的數目。
公用方法 GetHashCode 取得 HashCode。我們傳回建構期間給我們的雜湊碼。 (覆寫 Object.GetHashCode。)
公用方法靜態成員 GetLiteral 從指定的識別項字串取得常值 GraphNodeId 剖析。
公用方法靜態成員 GetNested(array<GraphNodeId[]) 取得巢狀 GraphNodeId 根據特定識別項。針對 Dictionary 進行查閱以盡量減少周圍 GraphNodeId 的數目。
公用方法靜態成員 GetNested(GraphNodeIdName, Object) 取得 GraphNodeId 根據名稱和值。針對 Dictionary 進行查閱以盡量減少周圍 GraphNodeId 的數目。
公用方法 GetNestedIdByName 從符合名稱的第一個內嵌 GraphNodeId 取得值。
公用方法 GetNestedValueByName<T> 從符合名稱的第一個內嵌 GraphNodeId 取得值。
公用方法靜態成員 GetPartial 根據名稱和值,取得部分 GraphNodeId針對 Dictionary 進行查閱以盡量減少周圍 GraphNodeId 的數目。它通常不是取得部分 GraphNodeId 節點 ID. 的使用。 永遠使用完整巢狀 GraphNodeId。
公用方法 GetType 取得目前實例 Type 的屬性。 (繼承自 Object)。
公用方法 GetValue<T> GraphNodeId 的值。這可以是:* String * Uri * GraphNodeId * GraphNodeIdCollection。
公用方法靜態成員 IsNullOrEmpty
受保護的方法 MemberwiseClone 建立目前 Object 的淺層複製 (Shallow Copy) 。 (繼承自 Object)。
公用方法靜態成員 Parse(String) 將字串剖析為 GraphNodeId。
公用方法靜態成員 Parse(String, Boolean) 將字串剖析為 GraphNodeId。
公用方法靜態成員 Parse(String, Boolean, Func<Int32, GraphNodeId>) 將字串解析成 GraphNodeId
公用方法 RemovedNestedNames 傳回包含指定之 GraphNodeIdName 的部分 GraphNodeId。
公用方法 ToString 取得 GraphNodeId 的字串。 (覆寫 Object.ToString。)

回頁首

運算子

  名稱 描述
公用運算子靜態成員 Addition + 運算子會加入兩個 GraphNodeIds。如果任一個 GraphNodeId 已包含陣列,則會將項目加入至陣列中。否則會傳回新的內嵌陣列。
公用運算子靜態成員 Equality == 運算子比較兩個 GraphNodeIds 並傳回兩者是否相等。要加入的第一個。要相加的第二個。如果 GraphNodeIds 相等,則為 true;否則為 false。
公用運算子靜態成員 Inequality ! = 運算子會比較兩個 GraphNodeIds 並傳回兩者是否相等。要加入的第一個。要相加的第二個。false,如果 GraphNodeId 相等;否則為 true。

回頁首

明確介面實作

  名稱 描述
明確介面實作私用方法 IEquatable<GraphNodeId>.Equals

回頁首

執行緒安全

這個類型的任何 Public static (在 Visual Basic 中為 Shared) 成員都是安全執行緒。不保證任何執行個體成員是安全執行緒。

請參閱

參考

Microsoft.VisualStudio.GraphModel 命名空間