Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/csharp-4.0/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 4.0 如何在控制台应用程序中从tfs获取路径_C# 4.0_Code Metrics - Fatal编程技术网

C# 4.0 如何在控制台应用程序中从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

我已经创建了一个控制台应用程序,它将两个参数之一作为input.xml文件,并将输出作为.htm文件

下面是访问tfs的代码

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的代码片段,效果很好。一些提示:

  • 确保
    http://myServer:8080/tfs/defaultcollection
    在团队资源管理器中右键单击团队集合的根目录,选择“属性”,并检查“Url”下的条目是否匹配,这是正确的
  • 检查
    MyProjectName
    是否与团队项目的确切名称和
    MyBuildDefinationName
    构建定义名称匹配
  • 右键单击“构建”下的
    MyBuildDefinitionName
    ,然后选择“编辑构建定义”。在“BuildDefaults”下导航,并检查“此生成将输出文件复制到放置文件夹”
  • 检查上次成功生成的
    MyBuildDefinitionName
    是否仍然持续(=尚未删除)。要执行此操作,请在TeamExplorer上右键单击它,选择“ViewBuilds”并在弹出的构建资源管理器中找到它。一旦找到它,请单击生成摘要中的“打开放置文件夹”,以确保TFS保留了它