This documentation is archived and is not being maintained.

VersionControlServer.QueryLabels Method (String, String, String, Boolean, String, VersionSpec, Boolean)

Gets a list of labels matching the specified filter parameters.. A label in Team Foundation Server designates a collection of specific versions of files and folders. For example, the label Beta 1 may refer to the files server.cs, client.cs, om.cs, and command.cs as they were on March 3, and the file server.cs as it was on March 5. Internally, the label Beta 1 is stored as "server.cs version 12, client.cs version 26" and continues in this pattern. When you apply a label, it does not freeze development, but it does allow you to rebuild your project at a designated point in the past. Every label has a scope, and its name must be unique within that scope. Most commonly a label is scoped by Team Project. This means that within a given Team Project, there can be only one label called Beta 1. However, you can choose to scope a label at a lower level. If Beta 1 is scoped at $/CmdLine/shell, then there can be no other label called Beta 1 in $/CmdLine/shell or any folder below it; however, $/CmdLine/parser may use the same label.

Namespace:  Microsoft.TeamFoundation.VersionControl.Client
Assembly:  Microsoft.TeamFoundation.VersionControl.Client (in Microsoft.TeamFoundation.VersionControl.Client.dll)

public VersionControlLabel[] QueryLabels(
	string labelName,
	string labelScope,
	string owner,
	bool includeItems,
	string filterItem,
	VersionSpec versionFilterItem,
	bool includeDownloadInfo


Type: System.String

The name of the label that you want to query. Wildcards may be used.

If null is passed, all labels are returned.

Type: System.String

The function will search for labels which are scoped at, or below, this path. If null is passed, labels are returned no matter where they are scoped (this is equivalent to passing in $/).

Type: System.String

The person who created the label. This option can be null to match all owners.

Type: System.Boolean

If this parameter is set to false, the Items array in the VersionControlLabel objects will be left empty, only metadata about the label itself will be returned. If this parameter is set to true, the function will return information about each item within the label.

Type: System.String

Only returns labels that contain this item. This string may represent a Team Foundation Server path ($/CmdLine/parse.cs) or a local path (C:\Code\CmdLine\parse.cs), in the latter case, the local path is mapped to a server path via a workspace. If null is passed, labels are returned regardless of the files and folders they include.

Type: Microsoft.TeamFoundation.VersionControl.Client.VersionSpec

The version of the specified filterItem. Pass VersionSpec.Latest to specify the current version. If filterItem is null, this parameter is ignored.

Type: System.Boolean

If you set includeDownloadInfo to true, the returned objects will contain information required to download files. This makes the initial query slower, so should only be used if you want to download files using the returned objects. (Note: this parameter is ignored if includeItems is false.)

Return Value

Type: Microsoft.TeamFoundation.VersionControl.Client.VersionControlLabel[]
The A VersionControlLabel object that contains the object contains information about the label itself, such as label name, last modified date, and comment. If requested, it will contain a list of all the files and folders included in the label. Note that an array is returned because one label may be defined multiple times under a specified scope.

Only set includeDownloadInfo to true if you want to download the files by using the returned objects. The call will be faster and require less bandwidth when this parameter is set to false. The overload methods set includeDownloadInfo to false.