在 NHapi 中,如果我们不知道消息类型(MSH#9)是什么,我们如何解析消息?
var parser = new NHapi.Base.Parser.PipeParser();
IMessage parsedMessage = parser.Parse(SampleMessage);
parsedMessage
is a NHapi.Base.Model.GenericMessage.V25
在运行时,我似乎无法读取 MSH 标头来读取 MessageType 字段,然后将消息重新解析(?)为该消息类型。
我对缺乏文档和示例感到沮丧。也许我离基地很远。我对 HL7 很陌生,但在我尝试使用 NHapi 之前,我认为我很好地理解了 HL7 规范。
parsedMessage.GetStructureName()
将为您提供消息类型和触发事件。parser.Encode(parsedMessage)
将以管道分隔的格式返回消息。
以下代码展示了如何获取消息类型以及如何获取管道格式的原始消息。
public static String ParseMessage(String message)
{
var parser = new NHapi.Base.Parser.PipeParser();
var parsedMessage = parser.Parse(message);
//Get the message type and trigger event
var msgType = parsedMessage.GetStructureName();
//Get the message in raw, pipe-delimited format
var pipeDelimitedMessage = parser.Encode(parsedMessage);
return pipeDelimitedMessage;
}
一些好的入门代码可以在hapi 示例网站 http://hl7api.sourceforge.net/devbyexample.html.
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)