TFS意外删除了UserStory.XML

时间:2016-01-25 15:11:42

标签: xml tfs tfs2013 tfs-process-template team-project-collection

我有点奇怪的问题。我试图通过Team Project Manager工具(http://teamprojectmanager.codeplex.com/)向UserStory类型添加一个新状态。在内联编辑器中,我添加了一个新的并单击了Ok。显然我做错了,因为它错了。当我尝试再次打开它时,除了root xml标记之外的所有上下文都消失了。

当然,我的产品Backlog不起作用。它说

“TF400917:当前配置对此功能无效。在更正配置之前,无法使用此功能。”

我可以加载积压的查询部分并查看所有故事&任务,但积压只是不会加载。我从Visual Studio下载了所有可用的模板并进行了比较,甚至上传了它们。什么都没有修复积压。我不确定它用于积压的模板是什么模板。我花了最近3天试图解决这个问题无济于事。我们真的没有在任何积压,我们会伤心失去的只是创建一个新的收集和重新开始是出了问题。

我不知道该怎么做。我能得到的任何帮助都会很棒。谢谢。

哦,我从团队项目经理打开了日志,我认为这是导致问题的错误:

TeamProjectManager Error: 0 :       [T01] [1/22/2016 3:36:22 PM] An unexpected exception occurred while importing work item types: Root element is missing.
System.Xml.XmlException: Root element is missing.
    at System.Xml.XmlTextReaderImpl.Throw(Exception e)
    at System.Xml.XmlTextReaderImpl.ParseDocumentContent()
    at System.Xml.XmlTextReaderImpl.Read()
    at System.Xml.XmlLoader.LoadDocSequence(XmlDocument parentDoc)
    at System.Xml.XmlLoader.Load(XmlDocument doc, XmlReader reader, Boolean preserveWhitespace)
    at System.Xml.XmlDocument.Load(XmlReader reader)
    at System.Xml.XmlDocument.LoadXml(String xml)
    at TeamProjectManager.Modules.WorkItemConfiguration.WorkItemConfigurationItemImportExport.ReplaceTeamProjectMacros(XmlDocument xml, IDictionary`2 macros) in C:\Users\jelled\Desktop\Code\TeamProjectManager\Main\TeamProjectManager.Modules.WorkItemConfiguration\WorkItemConfigurationItemImportExport.cs:line 284
    at TeamProjectManager.Modules.WorkItemConfiguration.WorkItemConfigurationItemImportExport.Import(ILogger logger, ApplicationTask task, Boolean setTaskProgress, WorkItemStore store, Dictionary`2 teamProjectsWithConfigurationItems, ImportOptions options) in C:\Users\jelled\Desktop\Code\TeamProjectManager\Main\TeamProjectManager.Modules.WorkItemConfiguration\WorkItemConfigurationItemImportExport.cs:line 31
    at TeamProjectManager.Modules.WorkItemConfiguration.WorkItemTypesViewModel.<>c__DisplayClass101_0.<PerformImport>b__1(Object sender, DoWorkEventArgs e) in C:\Users\jelled\Desktop\Code\TeamProjectManager\Main\TeamProjectManager.Modules.WorkItemConfiguration\WorkItemTypesViewModel.cs:line 616
    at System.ComponentModel.BackgroundWorker.OnDoWork(DoWorkEventArgs e)
    at System.ComponentModel.BackgroundWorker.WorkerThreadStart(Object argument)

1 个答案:

答案 0 :(得分:0)

如果有人偶然发现这个寻找答案,我就修好了。经过2天的挣扎,我修好了。

在Team Project Manager中,打开ProcessConfiguration xml文件。查看待办事项的所有已定义状态。打开相应的XML文件,查看那里定义的所有状态。他们必须匹配。

我的具体解决方案:

打开UserStory WIT,因为这是我记得在问题发生之前编辑的唯一xml文件。比较定义的状态与定义的状态。他们需要匹配。我在UserStory定义中列出了一个未在流程配置中列出的额外状态。

当我尝试上传时,我仍然遇到错误。但是,它给我的错误非常有帮助:

An error occurred while importing Process Configuration in Team Project "IMT": System.Web.Services.Protocols.SoapException: The following element contains an error: TaskBacklog/States. TF400536: This element defines the states for work items that appear on your backlog. The initial state value for each work item type must match one of the states defined in this element. The following work item types have an initial state that is not included in the defined states: 'Task'.
   at Microsoft.TeamFoundation.Server.WebAccess.Agile.WebServices.ProcessConfigurationService3.SetProjectProcessConfiguration(String projectUri, ProjectProcessConfiguration processConfiguration)
        System.Web.Services.Protocols.SoapException: System.Web.Services.Protocols.SoapException: The following element contains an error: TaskBacklog/States. TF400536: This element defines the states for work items that appear on your backlog. The initial state value for each work item type must match one of the states defined in this element. The following work item types have an initial state that is not included in the defined states: 'Task'.
   at Microsoft.TeamFoundation.Server.WebAccess.Agile.WebServices.ProcessConfigurationService3.SetProjectProcessConfiguration(String projectUri, ProjectProcessConfiguration processConfiguration)
   at Microsoft.TeamFoundation.Client.Channels.TfsHttpClientBase.HandleReply(TfsClientOperation operation, TfsMessage message, Object[]& outputs)
   at Microsoft.TeamFoundation.Client.Channels.TfsHttpClientBase.Invoke(TfsClientOperation operation, Object[] parameters, TimeSpan timeout, Object[]& outputs)
   at Microsoft.TeamFoundation.ProcessConfiguration.Client.ProcessConfigurationService3.SetProjectProcessConfiguration(String projectUri, ProjectProcessConfiguration processConfiguration)
   at Microsoft.TeamFoundation.ProcessConfiguration.Client.ProjectProcessConfigurationService.SetProcessConfiguration(String projectUri, ProjectProcessConfiguration processConfiguration)
   at TeamProjectManager.Modules.WorkItemConfiguration.WorkItemConfigurationItemImportExport.SetProcessConfiguration(Project project, WorkItemConfigurationItemType type, WorkItemConfigurationItem item) in C:\Users\jelled\Desktop\Code\TeamProjectManager\Main\TeamProjectManager.Modules.WorkItemConfiguration\WorkItemConfigurationItemImportExport.cs:line 537
   at TeamProjectManager.Modules.WorkItemConfiguration.WorkItemConfigurationItemImportExport.Import(ILogger logger, ApplicationTask task, Boolean setTaskProgress, WorkItemStore store, Dictionary`2 teamProjectsWithConfigurationItems, ImportOptions options) in C:\Users\jelled\Desktop\Code\TeamProjectManager\Main\TeamProjectManager.Modules.WorkItemConfiguration\WorkItemConfigurationItemImportExport.cs:line 119

失败

第一行的最后一行是最有帮助的:以下工作项类型的初始状态未包含在已定义的状态中:'任务'。

我用Task WIT重复了上述过程,并修复了它!我不知道任务WIT如何失去同步......不记得更新那个。哦,好吧。