4

NHapi では、messageType (MSH#9) がわからない場合、どのようにメッセージを解析できますか?

var parser = new NHapi.Base.Parser.PipeParser();

IMessage parsedMessage = parser.Parse(SampleMessage);

parsedMessageNHapi.Base.Model.GenericMessage.V25実行時にあり、MSH ヘッダーを読み取って MessageType フィールドを読み取り、メッセージをそのメッセージ タイプとして再解析 (?) できないようです。

ドキュメントと例が不足していることに不満を感じています。おそらく、私はベースから非常に離れています。私は HL7 に非常に慣れていませんが、NHapi を使用するまでは、HL7 の仕様をよく理解していると思っていました。

4

1 に答える 1

8

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 の例のサイトにあります。

于 2011-12-20T04:01:43.720 に答える