我有一个InfoPath 2010表单的问题,它背后有一些代码.我的表单的目的是从用户收集数据,并使用提供的答案,自动填充许多所需的任务.这些任务填充在表单的重复部分中.我的代码后面包含自
最初所有这些逻辑看起来都按预期工作,这些部分按预期填充.但我现在意识到写入XML表单的字段存在问题.
使用工作流程我正在为重复部分中的每个项目生成SharePoint任务.完成任务后,我将状态和完成日期写回表单.我遇到的问题是,在最初设置表单中的任务时,我显然没有填充CompletedDate字段.我假设该字段将自动添加到表单XML中,并带有xsi:nil = true属性.相反,它根本不在XML中,并且我的工作流在查找节点“faCompletedDate”时抛出了Object Reference而没有设置错误.检查表单的XML,它不存在.
我认为我需要的解决方案是在表单后面的代码中写出一个xsi:nil属性到teh faCompletedDate,我不知道这是怎么做的.
我试过了:
writer.WriteStartElement("faCompletedDate", myNs) writer.WriteAttributeString("xsi", "nil", xsiNs, "true") writer.WriteEndElement()
但这会引发模式验证,发现非数据类型错误.
有人可以帮助我解决这个问题并建议最好的使用方法.
好的,我设法解决了这个问题.看来我错过了我的一个XMlWriter语句中的命名空间管理器参数.更新这个允许我按预期写出完整的部分.