C# 4.0 如何在控制台应用程序中从tfs获取路径
我已经创建了一个控制台应用程序,它将两个参数之一作为input.xml文件,并将输出作为.htm文件 下面是访问tfs的代码C# 4.0 如何在控制台应用程序中从tfs获取路径,c#-4.0,code-metrics,C# 4.0,Code Metrics,我已经创建了一个控制台应用程序,它将两个参数之一作为input.xml文件,并将输出作为.htm文件 下面是访问tfs的代码 TfsTeamProjectCollection teamProjectCollection = TfsTeamProjectCollectionFactory.GetTeamProjectCollection (new Uri("http://myServer:8080/tfs/defaultcollect
TfsTeamProjectCollection teamProjectCollection =
TfsTeamProjectCollectionFactory.GetTeamProjectCollection
(new Uri("http://myServer:8080/tfs/defaultcollection"));
var buildService = (IBuildServer)teamProjectCollection.GetService(
typeof(IBuildServer));
IBuildDefinition myBuildDefination = buildService.GetBuildDefinition(
"MyProjectName", "MyBuildDefinationName");
Uri lastKnownGoodBuild = myBuildDefination.LastGoodBuildUri;
IBuildDetail myBuildDetail = buildService.GetBuild(lastKnownGoodBuild);
string dropLocation = myBuildDetail.DropLocation;
但是上面的内容似乎对我不起作用……所以我想手动传递路径。
正如您在下面的代码片段中所看到的
// i have just added blackslash at the start and my problem solved
string xmlfile = "\\\\myTfsPath\\CodeMetricsResult.xml";
if (File.Exists(xmlfile))
{
//do something
}
但由于某些原因…它总是去我的else街区
请告诉我我做错了什么
注意…tfs路径在网络上,我拥有对它的所有访问权限
谢谢,后一部分应该可以用于指向现有文件
@“C:\Folder\CodeMetricsResult.xml”
的完整输入,该文件甚至对网络中的文件
@“\\netdrive\Folder\CodeMetricsResult.xml”
我尝试了使用TFS-SDK的代码片段,效果很好。一些提示:
- 确保
在团队资源管理器中右键单击团队集合的根目录,选择“属性”,并检查“Url”下的条目是否匹配,这是正确的http://myServer:8080/tfs/defaultcollection
- 检查
是否与团队项目的确切名称和MyProjectName
构建定义名称匹配MyBuildDefinationName
- 右键单击“构建”下的
,然后选择“编辑构建定义”。在“BuildDefaults”下导航,并检查“此生成将输出文件复制到放置文件夹”MyBuildDefinitionName
- 检查上次成功生成的
是否仍然持续(=尚未删除)。要执行此操作,请在TeamExplorer上右键单击它,选择“ViewBuilds”并在弹出的构建资源管理器中找到它。一旦找到它,请单击生成摘要中的“打开放置文件夹”,以确保TFS保留了它MyBuildDefinitionName