mil*_*lie 17 c# visual-studio-2010 tfs2010
我需要创建两个方法如下:
我做了一些谷歌搜索,发现了一些链接,并设法提出了一些代码.我似乎无法找出调用方法来获取变更集项的完整列表.我把一些东西搞得一团糟但想知道是否有人可以帮助我:
TfsTeamProjectCollection projectCollection = TfsTeamProjectCollectionFactory.GetTeamProjectCollection(new Uri("http://mydomain.com:8080/tfs"));
VersionControlServer versionControl = projectCollection.GetService<VersionControlServer>();
int latestId = versionControl.GetLatestChangesetId();
List<Changeset> changesetList = new List<Changeset>();
for (int i = 1; i < latestId; i++)
{
try
{
Changeset cs = versionControl.GetChangeset(i);
if (cs != null)
{
changesetList.Add(cs);
}
}
catch (ResourceAccessException)
{
}
}
Run Code Online (Sandbox Code Playgroud)
获取某些Id的变更集会抛出"ResourceAccessException"异常,这就是添加处理程序的原因.
关于如何以"正确"的方式做到这一点的任何想法?
我正在使用Visual Studio 2010和TFS 2010.应用程序是用C#编写的.Net 4.0应用程序.
TIA
Mor*_*sen 27
试试这个:
// Replace with your setup
var tfsServer = @"http://tfsserver:8080/tfs/SW";
var serverPath = @"$/PCSW/ProjectX/Main";
// Connect to server
var tfs = TfsTeamProjectCollectionFactory.GetTeamProjectCollection(new Uri(tfsServer));
tfs.Connect(ConnectOptions.None);
var vcs = tfs.GetService<VersionControlServer>();
// Create versionspec's. Example start with changeset 529
VersionSpec versionFrom = VersionSpec.ParseSingleSpec("C529", null);
// If you want all changesets use this versionFrom:
// VersionSpec versionFrom = null;
VersionSpec versionTo = VersionSpec.Latest;
// Get Changesets
var changesets = vcs.QueryHistory(
serverPath,
VersionSpec.Latest,
0,
RecursionType.Full,
null,
versionFrom,
versionTo,
Int32.MaxValue,
true,
false
).Cast<Changeset>();
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
14478 次 |
最近记录: |