public QuickFix.FixMessageDescriptor GetDescriptor()
        {
            try
            {
                QuickFix.Message msg = new QuickFix.Message();

                msg.FromString(_message, false, null, null);

                string beginString = msg.Header.GetField(QuickFix.Fields.Tags.BeginString);

                QuickFix.DataDictionary.DataDictionary dict = _dicSource.GetDictionaryForBeginString(beginString);

                QuickFix.Message theMsg = new QuickFix.Message();

                theMsg.FixMessageDescriptorEnabled = true;

                theMsg.FromString(_message, true, dict, dict);

                return theMsg.GetDescriptor();

            }
            catch (Exception ex)
            {
                Trace.TraceError("{0}: Error while parsing fix message: {1}", this, ex);

                return null;
            }
        }
        public QuickFix.FixMessageDescriptor GetDescriptor()
        {
            try
            {
                QuickFix.Message msg = new QuickFix.Message();

                msg.FromString(_message, false, null, null);

                string beginString = msg.Header.GetField(QuickFix.Fields.Tags.BeginString);

                QuickFix.DataDictionary.DataDictionary dict = _dicSource.GetDictionaryForBeginString(beginString);


                QuickFix.Message theMsg = new QuickFix.Message();

                theMsg.FixMessageDescriptorEnabled = true;

                theMsg.FromString(_message, true, dict, dict);

                return(theMsg.GetDescriptor());
            }
            catch (Exception ex)
            {
                Trace.TraceError("{0}: Error while parsing fix message: {1}", this, ex);

                return(null);
            }
        }