2

我在TFS2010源代码控制下的Documents文件夹下有一些测试,安全,项目管理和其他一些文档文档。有谁知道如何访问它们以下载并复制到本地路径?如何使用Workflow Foundation从Sharepoint文档库下载文档?

这些文件实际上不在$/...文件夹下,尽管它们具有Sharepoint Web服务器路径,如“http://myServer/sites/MyProyect/Test/Tests_P13_F00120.doc”。我试图使用DownloadFiles活动而没有成功,因为它需要一个以$ /开头的路径。有什么建议吗?

+0

这些文件不在源代码控制 - 他们是在SharePoint。 –

+0

@JohnSaunders:是的,我提到它“虽然他们有一个Sharepoint Web服务器路径...”。但是有什么办法让他们通过工作流程?感谢您回答 – GoRoS

+0

请说出你想要完成的事情。 “让他们”不是很具描述性。 –

回答

1

DownloadFiles不是您可以使用的活动,它意味着处理驻留在Source控件中的文件。

相反,您需要建立到TFS的Sharepoint复制服务的连接,该服务驻留在​​处。我们通过在构建解决方案中添加服务参考来实现这一点。

然后,我们实现了一个构建活动,它基本上与您之后的构建活动完全相反:在TFS构建过程中,它将文档上载到Sharepoint。

实例化看起来是这样的:

BasicHttpBinding binding = new BasicHttpBinding(); 
binding.Security.Mode = BasicHttpSecurityMode.TransportCredentialOnly; 
binding.Security.Transport.ClientCredentialType = HttpClientCredentialType.Ntlm; 
binding.Security.Transport.ProxyCredentialType = HttpProxyCredentialType.None; 
binding.Security.Message.ClientCredentialType = BasicHttpMessageCredentialType.UserName; 

EndpointAddress endpointAddress = new EndpointAddress("http://<Site>/_vti_bin/Copy.asmx"); 

CopySoapClient copyService = new CopySoapClient(binding,endpointAddress); 

此副本服务公开一个GetItem方法,这是你可能应该调用一个。

我不知道这是否是GetItem能够支持http://myServer/sites/MyProject/Test/*.doc种事情

相关问题