7

我打开一个工作项并进入附件选项卡。我双击一个 .doc 附件。它不是在 Word 中打开文件,而是启动浏览器,从而关闭文件。

有没有办法让 TFS 直接在 Word 中运行附件?

4

2 回答 2

4

通过给定的 URL 从服务器访问附件:

http://mytfs/tfs/default/WorkItemTracking/v1.0/AttachFileHandler.ashx?FileID=115&FileName=mydoc.doc

Visual Studio 基本上会执行此 URL 的 Shell Exec,它会启动您的默认 Web 浏览器。

您有两个工作项表单的实现:

  • 桌面一:它执行一个 shell exec
  • 网络一:您已经在网络浏览器中

所以没有其他办法,我怀疑网上是否有定制工具可以缩短这个过程......

于 2012-05-24T23:02:27.733 回答
3

查看 AttachFileHandler.ashx 的 HTTP 响应标头,“问题”是因为内容作为文件返回:

HTTP/1.1 200 OK
Cache-Control: private
Content-Length: 11688
Content-Type: application/octet-stream
Server: Microsoft-IIS/7.0
X-AspNet-Version: 4.0.30319
content-disposition: filename=Screenshot.png
X-Powered-By: ASP.NET
Date: Fri, 17 Aug 2012 08:51:44 GMT

即使浏览器可以直接显示图像,它也是强制另存为对话框的content-disposition标题。请参阅 w3.org 中关于19.5.1 Content-Disposition的注释:

如果此标头用于内容类型为 application/octet-stream 的响应中,则暗示用户代理不应显示响应,而是直接输入“将响应另存为...”对话框。

我怀疑 TFS 是这样做的,因此它可以返回任何文件,而不管接收浏览器是否可以本地处理内容,例如,使用 PDF 插件。也许可以修改 AttachFileHandler.ashx 来改变它返回内容的方式?

于 2012-08-17T10:25:15.930 回答