当前正在做一个VSTS下的项目,每次用TSF提供的SQL语句进行数据采集时都是把满足条件的WorkItem的所有数据都取出来。实际上这是极大的效率浪费。如下代码所示:// ....
string strFieldsSQL = "";
strFieldsSQL = "SELECT [System.Title] FROM WorkItems "
               + "WHERE [System.ID] = '" + strWiID + "'"
               ;WorkItemCollection wiCollection;
wiCollection = m_WorkItemStore.Query(strFieldsSQL);
// ....我所想要的仅仅是 包含[System.Title]这一个field的WorkItemCollection, 但是实际上却把满足filter条件的WorkItem的所有field信息取出来了。不知道版上的兄弟们有什么好的建议 ? 直接使用SQL 连接Server通过查表的方式可以解决,但这次不想这么用。 ÷先在此感谢 !

解决方案 »

  1.   

    先谢谢楼上的兄弟,在想一个问题,如果SQL中Select的时候全部WorkItem的fields都会取出来,那select就没有意义了,都是“Select *”。MS不会出现这样漏洞吧。
      

  2.   

    另外一个问题,VSTS是线型的版本管理方式,而不是ClearCase的Version Tree,当我要获取某个特定版本的时候导致效率低下,请问大家有什么好的方法没有?
      

  3.   

    虽然返回的是WorkItemCollection,但实际上只有这些WorkItem的Title field是由内容。如果需要访问其他field是用再连到服务器的。