GraphLinkCollection Class
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.
This class manages a collection of Links. This class does not preserve the order in which you added the links, so when you enumerate them you will get them back in a random order.
public ref class GraphLinkCollection : Microsoft::VisualStudio::GraphModel::IHasGraphOwner, System::Collections::Generic::ICollection<Microsoft::VisualStudio::GraphModel::GraphLink ^>, System::Collections::Generic::IEnumerable<Microsoft::VisualStudio::GraphModel::GraphLink ^>
public class GraphLinkCollection : Microsoft.VisualStudio.GraphModel.IHasGraphOwner, System.Collections.Generic.ICollection<Microsoft.VisualStudio.GraphModel.GraphLink>, System.Collections.Generic.IEnumerable<Microsoft.VisualStudio.GraphModel.GraphLink>
type GraphLinkCollection = class
interface ICollection<GraphLink>
interface seq<GraphLink>
interface IEnumerable
interface IHasGraphOwner
Public Class GraphLinkCollection
Implements ICollection(Of GraphLink), IEnumerable(Of GraphLink), IHasGraphOwner
- Inheritance
-
GraphLinkCollection
- Implements
Properties
Count |
Return the number of links in the collection. |
Graph |
Gets the Graph associated with this links collection |
IsReadOnly |
Gets a value indicating whether the System.Collections.Generic.ICollection is read-only. |
Owner |
Gets the Graph associated with this links collection |
Methods
Add(GraphLink, GraphLink) |
Adds a link to the graph, or merge it with an existing Link object |
Add(GraphLink) |
Adds a link to the graph, or merge it with an existing Link object |
Add(IEnumerable<GraphLink>) |
Add all the links in the given set. |
Clear() |
Remove all links in this collection |
Contains(GraphLink) |
Determines if the given link is in this collection |
CopyTo(GraphLink[], Int32) |
Copies the elements of the System.Collections.Generic.ICollection to an System.Array, starting at a particular System.Array index. |
Get(GraphNode, GraphNode, Int32) |
Gets the link with the specified source |
Get(GraphNode, GraphNode) |
Gets the link with the specified source |
Get(GraphNodeId, GraphNodeId, Int32) |
Gets the link with the specified source and target and multi-link index |
Get(GraphNodeId, GraphNodeId) |
Gets the link with the specified source using GraphNodeId |
Get(String, String, Int32) |
Gets the link with the specified source using node Id as strings and a multilink index |
Get(String, String) |
Gets the link with the specified source using node Id as strings |
GetAll(GraphNode, GraphNode) |
Gets all links between the given source and target nodes. Each link must have a different Index. |
GetByCategory(GraphCategory[]) |
Returns all links in the graph that have at least one of the specified categories or have inherited categories that are in the set. For example, if we have a category "B" that inherits from the category "A" and we ask for all nodes that have a category "A" then it will return links that have either "A" or "B" categories. However, if we ask for category "B" it will only return nodes with category "B", it will not return nodes that only have category "A". In otherwords, it does not expand the search to include BasedOn categories of the given set, to do that you must call HasCategoryInSet with GraphCategoryMatchOption.Inherit. |
GetByProperty(GraphProperty, Object) |
Returns all links in the graph that have the specified property value. |
GetEnumerator() |
Gets the typed enumerator for this collection |
GetFiltered(Func<GraphLink,Boolean>) |
Returns all nodes in the graph that match according to the given filter |
GetLinksFrom(String, GraphCategory[]) |
Get all links from the specified node id that have at least one of the specified categories. |
GetLinksTo(String, GraphCategory[]) |
Get all links to the specified node id have at least one of the specified categories. |
GetOrCreate(GraphNode, GraphNode, String, GraphCategory) |
Gets the link from the specified source to the specified target node. If not found, a new link will be created. |
GetOrCreate(GraphNode, GraphNode) |
Gets the link from the specified source to the specified target node. If not found, a new link will be created. |
GetOrCreate(GraphNodeId, GraphNodeId, Int32) |
Attempts to get the link with the specified source, target and multi-link index. If not found, a new link will be created. It also creates the source and target Node if those are not already defined (and these are created with no category). |
GetOrCreate(GraphNodeId, GraphNodeId, String, GraphCategory) |
Attempts to get the link with the specified source, target. If not found, a new link will be created. It also adds the specified category if its not already defined. It also creates the source and target Node if those are not already defined (and these are created with no category). |
GetOrCreate(GraphNodeId, GraphNodeId) |
Attempts to get the link with the specified source, target. If not found, a new link will be created. It also creates the source and target Node if those are not already defined (and these are created with no category). |
GetOrCreate(GraphNodeId, String) | |
GetOrCreate(String, GraphNodeId) | |
GetOrCreate(String, String, Int32) |
Attempts to get the link with the specified source, target and multilink index If not found, a new link will be created. |
GetOrCreate(String, String, String, GraphCategory) |
Attempts to get the link with the specified source, target. If not found, a new link will be created. It also adds the specified category if its not already defined. It also creates the source and target Node if those are not already defined (and these are created with no category). |
GetOrCreate(String, String) |
Attempts to get the link with the specified source, target. If not found, a new link will be created. It also creates the source and target Node if those are not already defined (and these are created with no category). |
Remove(GraphLink, GraphLink) |
Removes the first occurrence of a specific object from the System.Collections.Generic.ICollection. |
Remove(GraphLink) |
Removes the first occurrence of a specific object from the System.Collections.Generic.ICollection. |
Remove(GraphNodeId, GraphNodeId, GraphCategory) |
Removes the given category from the link between source and target and if this is the last category, then it removes the link as well. |
Remove(IEnumerable<GraphLink>) |
Remove all the links in the given set. |
Remove(String, String, GraphCategory) |
Removes the given category from the link between source and target and if this is the last category, then it removes the link as well. |
Events
Added |
This event is raised immediately when a new node is added to the collection. |
Removed |
This event is raised immediately when a node is removed from the collection. |
Explicit Interface Implementations
IEnumerable.GetEnumerator() |
Gets the enumerator for this collection |
Extension Methods
EmptyIfNull<T>(IEnumerable<T>) |
Return this enumeration in case it is not null. In case it is null return empty enumeration. |