我有一个 csv 文件,我遍历每条记录并单独处理每条记录。在遍历记录的过程中,CSV 中的每一行最终都是一条没有命名空间的消息;因此我无法在地图中使用该消息。为了解决我的消息中没有命名空间的问题,我将消息写入本地字符串变量,然后进行一些字符串操作以添加命名空间。必须有更好的方法来遍历 csv 文件并处理每条记录。
以下是对我的问题的更详细描述:我有一个需要读取的 csv 文件,然后对每条记录执行一系列任务。我选择处理每条记录的方法是确定 csv 文件中的记录数,然后通过执行以下 xpath 命令循环遍历每条记录:“Message_SingleRecord = xpath(Message_Document, "//processingItem[" + counterString + "]");"。除了因为“processingItem”元素本质上是 csv 文档的子记录,每个 Message_SingleRecord 都没有命名空间,所以我无法转换/映射它之外,这可以很好地给我每条记录。为了将命名空间添加到 Message_SingleRecord,我创建了这个可怕的 hack:
Debug_SingleMessage = Message_SingleRecord;
debugVariable = Debug_SingleMessage.OuterXml;
debugVariable = debugVariable.Replace("<processingItem xmlns=\"\"",
"<ns0:processingItem xmlns:ns0=\"http://SchemaGeneration.ProcessingSingleRecord\">");
debugVariable = debugVariable.Replace("</processingItem>", "</ns0:processingItem>");
xmlDoc = new System.Xml.XmlDocument();
xmlDoc.LoadXml(debugVariable);
Message_SingleRecord = xmlDoc;