【原创】用反射实现HL7消息的接受的实现

 

         /// <summary>
        /// 将受到的消息进行处理
        /// 作者QQ:147777583
        /// </summary>
        public static string ManageReceiveMsg(string msg)
        {
            try
            {
                //string returnStr = null;
                Type a = typeof(Hl7ResoluMsg);
                AtlastigerHl7api.Base.Parser.PipeParser Parser = new AtlastigerHl7api.Base.Parser.PipeParser();
                AtlastigerHl7api.Base.Model.IMessage m = Parser.Parse(msg);
                string typeStr=m.Message.ToString ();
                string Str=null ;
                String returnStr = null;

                if(typeStr.IndexOf("ORM")>0 )
                {
                    Str = "ResoluORM" + m.Version.Replace('.', '_').ToString() + "Str";
                }
                else if (typeStr.IndexOf("ADT") > 0)
                {
                    Str = "ResoluADTA08" + m.Version.Replace('.', '_').ToString() + "Str";
                }
                else
                {
                    returnStr = MyFuction.responsionErrorHl7(msg);
                    return returnStr;

                }
                   
                Type t = Type.GetType("Atlastiger.CommonTools.Hl7ResoluMsg");

                try
                {

                    returnStr=(String)t.InvokeMember(Str, BindingFlags.Default | BindingFlags.InvokeMethod, null, null, new object[] {Parser, m, msg });
                }
                catch
                {
                    returnStr = MyFuction.responsionErrorHl7(msg);
                }
 
                return returnStr;

            }
            catch (Exception e)
            {
                throw new Exception(e.Message);
            }
        }
 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值