故事是这样开始的,一天开发人员求助说,在浏览器中修改了系统默认的工作项查询“已指派给我”的后,发现这个查询每次都提示超时,并且没有办法恢复到初始的设置状态,因为出现超时提示以后,查询编辑器就无法使用,如下图:

找遍了所有可以编辑工作项查询的工具,Visual Studio, Eclipse都没有看到可以编辑系统默认查询的功能。即使在浏览器中使用“另存为”的方法把“已指派给我”保存为另外一个查询,也无法恢复系统默认的状态。已经觉得自己黔驴技穷了,并且由于这事发生在生产系统中,有好几千开发人员每天在平台上工作,不敢直接在数据库中做动作,最后只好联系微软TFS产品组,向开发人员求助。

TFS产品组开发人员很快有了回音,并给出了修复方案,看来在MVP群里混,还是有好处的。

下面把修复的方案贴在这里,希望能够对碰到同样问题的朋友提供帮助:

微软开发人员的回复是这样的,在TFS 2013中,工作项查询过程中如果出现超时现象,查询编辑器则被禁止使用;好在这个非常不方便的用户体验在最新版的TFS 2017中得到了改善,用户可以修改查询了。在TFS 2013中,你必须按照下面的方案直接修改数据库中的相关记录:

-- The query needs to run on the same collection database where the project lives. Change the database name if it is different

USE [Tfs_DefaultCollection]

-- Find user id from datatable based on its domain and username. It is recommended to double check the data to make sure we are selecting the right user

DECLARE @userId nvarchar(50);

SELECT @userId = TeamFoundationId FROM [dbo].[Constants] WHERE DomainPart = '<Domain name>' AND NamePart = '<Domain username>'

-- Find project id from datatable based on its name. It is recommended to double check the data to make sure we are selecting the right project

DECLARE @projectId nvarchar(50);

SELECT @projectId = project_id FROM [dbo].[tbl_projects] WHERE project_name = '<Project name>'

-- This will reset the “Assigned to me” query on the selected user

DELETE FROM [dbo].[tbl_RegistryItems]

WHERE ParentPath = '#\Users\' + @userId + '\WebAccess\Projects\' + @projectId + '\Queries\a2108d31-086c-4fb0-afda-097e4cc46df4\'

如何在TFS中恢复系统默认查询”已指派给我”的设置(TFS 2013)的更多相关文章

  1. 如何在Solr中实现多core查询

    基于solr或者elasticsearch提供的多核,多索引,多shard等查询能力,一般都是由lucene提供的多索引查询的功能演化而来的,这个功能在单机版的lucene里面确实没有发挥多大的威力, ...

  2. C#中用DateTime的ParseExact方法解析日期时间(excel中使用系统默认的日期格式)

    最近做的项目中服务器是英文的系统,系统需要通过excel的单元格导入日期,excel中的日期格式是系统默认的日期格式,如下图所示 以上日期格式,会跟着操作系统设置的日期格式相同例如我的中文系统的日期格 ...

  3. Linux中的系统默认日志

    /var/log/cron 记录了系统定时任务相关的日志 /var/log/cups 记录了打印信息的日志 /var/log/dmesg 记录了系统在开机时内核自检的信息,可以通过dmesg命令直接查 ...

  4. ubuntu14.04恢复系统默认中文字体

    今天 Ubuntu14.04已发布就进行了更新,在配置过程中,无意安装了某些中文字体,导致系统的中文字体极其难看,根据网上说的修改配置文件和tweak 修改的方法都不能解决,最终找到的解决办法(htt ...

  5. 如何在eclipse中修改jsp默认编码

    在使用eclipse编程的时候,很多默认的编码都是iso-8859-1我们经常使用的,在eclipse中怎么修改jsp页面的默认编码呢. 第一步:打开eclipse,找到windows-->pr ...

  6. 如何在ArcGIS中恢复注记文字

    文字标注是地图上一种特殊的视觉元素,可通过文字表达图形符号难以说明的地图内容,它与图形符号结合在一起存在于地图上,是关乎地图构图美的关键因素之一. MapGIS软件下子图对象和注释对象统统保存在点文件 ...

  7. 如何在ArcGIS中恢复MapGIS制图表达信息

    1.输出符号信息 Map2Shp软件中提供了图示表达转换功能,提供对MapGIS图形特征可视表达信息的跨平台支持.若要使用该功能,必须在转换时,"图元参数输出方式"选定为[图元参数 ...

  8. bcb 如何在DLL中捕捉系统级异常

    http://topic.csdn.net/t/20031023/09/2385627.html -------------------------------------------------- ...

  9. 如何在Access2007中使用日期类型查询数据

    select * from 表 where datediff("d",日期型的字段,#2008-09-01#)=0或select * from 表 where 日期型的字段 > ...

随机推荐

  1. 【自然框架】终于把源码弄到git上了。

    好久没写博客了,发现又从左面的排名里掉出去了. 说来惭愧,一直说是开源,但是源码一直没能放到git里面.原因是,不会用. 最近终于把git弄明白了.把源码都放进去了. 刚兴趣的话可以来看看. http ...

  2. javascript通用事件封装

    随着最近几年Html5的兴起,越来越多的应用采用html5进行实现,一个优秀的网页应用不但需要美观简洁的UI界面,更需要一个良好的交互.网页应用大部分的交互需要用javascript事件进行实现.虽然 ...

  3. ScrollReveal.js – 帮助你实现超炫的元素运动效果

    ScrollReveal.js 用于创建和管理元素进入可视区域时的动画效果,帮助你的网站增加吸引力.只需要给元素增加 data-scrollreveal 属性,当元素进入可视区域的时候会自动被触发设置 ...

  4. Struts2详细教程

    Struts2详细教程:http://www.yiibai.com/struts_2/

  5. JavaScript中with语句的理解

    with语句的作用是暂时改变作用域链.减少的重复输入. 其语法结构为: with(object){ //statements } 举一个实际例子吧: with(document.forms[0]){ ...

  6. Chrome 控制台console的用法

    下面我们来看看console里面具体提供了哪些方法可以供我们平时调试时使用. 目前控制台方法和属性有: ["$$", "$x", "dir" ...

  7. AJAX跨域访问(从Tomcat8到Apache/Nginx)

    1.在Tomcat的Root目录下放入如下的文件 apache-tomcat-8.0.12X64\webapps\ROOT clientaccesspolicy.xml文件 <?xml vers ...

  8. -[__NSCFDictionary setObject:forKey:]: mutating method sent to immutable object' 解决方法

    -[__NSCFDictionary setObject:forKey:]: mutating method sent to immutable object' 解决方法: 错误:NSMutableD ...

  9. Android Handler机制(一)---Message源码分析

    Message: 定义: public final class Message implements Parcelable Message类是个final类,就是说不能被继承,同时Message类实现 ...

  10. ios线程和GCD

    1.什么是进程? 进程是指在系统中正在运行的一个应用程序.比如同时打开QQ.Xcode,系统就会分别启动2个进程.截图 2.什么是线程? 1).一个进程要想执行任务,必须得有线程(每一个进程至少要有一 ...