如何使用“导入”导入TFS工作项;“多对多”;Excel中的直接链接
我有一个从ReqPro创建的需求Excel电子表格,需要导入TFS。每个需求都有一个链接自和链接至的字段,这两个字段都可以包含多个条目。由于链接关系是多对多的,因此需要使用直接链接类型(而不是父子链接)。我原以为我可以使用Excel 2010导入此内容,但当在Excel中使用直接链接打开查询时,结果是平面的,并且不包含链接信息。我有超过10000个这样的需求需要导入数千个链接,所以我需要将其自动化。有没有一种简单的方法可以将多对多直接链接导入TFS?很抱歉,这是出于设计,请参阅microsoft connect上出现的此错误 然而,似乎有几个解决办法如何使用“导入”导入TFS工作项;“多对多”;Excel中的直接链接,excel,tfs,many-to-many,hyperlink,import-from-excel,Excel,Tfs,Many To Many,Hyperlink,Import From Excel,我有一个从ReqPro创建的需求Excel电子表格,需要导入TFS。每个需求都有一个链接自和链接至的字段,这两个字段都可以包含多个条目。由于链接关系是多对多的,因此需要使用直接链接类型(而不是父子链接)。我原以为我可以使用Excel 2010导入此内容,但当在Excel中使用直接链接打开查询时,结果是平面的,并且不包含链接信息。我有超过10000个这样的需求需要导入数千个链接,所以我需要将其自动化。有没有一种简单的方法可以将多对多直接链接导入TFS?很抱歉,这是出于设计,请参阅microsoft
private void从ExcelandCreateLinkWorkItems()读取信息
{
使用(SpreadsheetDocument SpreadsheetDocument=SpreadsheetDocument.Open(@“FilePath\fileName”,false))
{
WorkbookPart WorkbookPart=电子表格文档.WorkbookPart;
WorksheetPart WorksheetPart=workbookPart.WorksheetParts.First();
SheetData SheetData=worksheetPart.Worksheet.Elements().First();
字符串文本;
int WorkItemId=0;
foreach(sheetData.Elements()中的r行)
{
foreach(r.Elements()中的单元格c)
{
//循环遍历每一行,直到完成工作项链接的一个逻辑块。
var tfs=tfstreamprojectcollectionfactory.GetTeamProjectCollection(新Uri(“TfsUrl”));
var wiStore=tfs.GetService();
WorkItem wi=new WorkItem(new WorkItemType//创建excel中类型的新工作项)
//将所有列单元格值关联到工作项
wi.Save();
//这应该给你一个身份证了
WorkItemId=wi.Id;
}
}
}
}
嗯
干杯,塔伦
private void ReadInformationFromExcelAndCreateLinkWorkItems()
{
using (SpreadsheetDocument spreadsheetDocument = SpreadsheetDocument.Open(@"FilePath\fileName", false))
{
WorkbookPart workbookPart = spreadsheetDocument.WorkbookPart;
WorksheetPart worksheetPart = workbookPart.WorksheetParts.First();
SheetData sheetData = worksheetPart.Worksheet.Elements<SheetData>().First();
string text;
int WorkItemId = 0;
foreach (Row r in sheetData.Elements<Row>())
{
foreach (Cell c in r.Elements<Cell>())
{
// Loop through each row till you complete one logical block of work item Links.
var tfs = TfsTeamProjectCollectionFactory.GetTeamProjectCollection(new Uri("TfsUrl"));
var wiStore = tfs.GetService<WorkItemStore>();
WorkItem wi = new WorkItem(new WorkItemType // Create a new work item of the type as in your excel)
// associate all column cell values to the work item
wi.Save();
// This should give you an ID now
WorkItemId = wi.Id;
}
}
}
}