/// <summary>
        /// Deserialize the BrokeredMessage message body into a EntityRecordMessage
        /// </summary>
        /// <param name="message">BrokeredMessage message body</param>
        /// <param name="brokeredMessage">BrokeredMessage message</param>
        /// <returns>ICrmSubscriptionMessage</returns>
        internal new static ICrmSubscriptionMessage DeserializeMessage(string message, BrokeredMessage brokeredMessage)
        {
            AssociateDisassociateMessage entityRecordMessage = (AssociateDisassociateMessage)CrmSubscriptionMessage.DeserializeMessage(message, typeof(AssociateDisassociateMessage));

            if (entityRecordMessage != null && entityRecordMessage.ValidMessage)
            {
                entityRecordMessage.AppendProperties(brokeredMessage);
                return(entityRecordMessage);
            }

            return(null);
        }