加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

XmlWriter – 编写xsi:nil = true属性

发布时间:2020-12-16 22:43:28 所属栏目:百科 来源:网络整理
导读:我有一个InfoPath 2010表单的问题,它背后有一些代码.我的表单的目的是从用户收集数据,并使用提供的答案,自动填充许多所需的任务.这些任务填充在表单的重复部分中.我的代码后面包含自动填充重复部分中每个条目的逻辑.我正在使用 XMLWriter类和WriteStringElem
我有一个InfoPath 2010表单的问题,它背后有一些代码.我的表单的目的是从用户收集数据,并使用提供的答案,自动填充许多所需的任务.这些任务填充在表单的重复部分中.我的代码后面包含自动填充重复部分中每个条目的逻辑.我正在使用 XMLWriter类和WriteStringElement方法来填充重复节中的每个字段.

最初所有这些逻辑看起来都按预期工作,这些部分按预期填充.但我现在意识到写入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语句中的命名空间管理器参数.更新这个允许我按预期写出完整的部分.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读