Сообщение это Доменный Компонент MQMessage. Код приведен ниже.

 

   [DomainComponent]

  public interface MQMessage

   {

        /// <summary>

        /// Message Status

        /// </summary>

        [XafDisplayName("Status")]

        [VisibleInListView(true)]

        MessageStatus CurrentStatus { getset; }

 

        /// <summary>

        /// Created Date

        /// </summary>

        [XafDisplayName("Created Date")]

        [ModelDefault("DisplayFormat""{0:dd.MM.yyyy HH:mm}"), ModelDefault("EditMask""dd.MM.yyyy HH:mm")]

        DateTime CreatedDate { getset; }

 

        /// <summary>

        /// Message tag

        /// </summary>

        [XafDisplayName("Type")]

        [VisibleInListView(false)]

        string Tag { getset; }

 

        /// <summary>

        /// Message description

        /// </summary>

        [XafDisplayName("Description")]

        string Description { getset; }

 

        /// <summary>

        /// The user who initiates the message

        /// </summary>

        [XafDisplayName("User")]

        [VisibleInListView(true)]

        string User { getset; }

 

        /// <summary>

        /// Specific message data

        /// </summary>

        [VisibleInListView(false)]

        [PersistentDc]

        XPWeakReferenceStruct MessageData { getset; }

   }

 

Свойство Tag указывает тип Сообщения. Это позволяет хранить разные типы Сообщений и назначать каждому типу соответствующий Обработчик.

CurrentStatus описывает текущий статус Сообщения в Очереди, доступные значения перечислены в MessageStatus.

Поле MessageData хранит специфические данные Сообщения.

Чтобы создать новый тип сообщения, создайте уникальный тип и данные для обработки. Данные для обработки также являются Доменным Компонентом.

Чтобы добавить или отменить Сообщение, воспользуйтесь классом MQManager. Это класс имеет поле UseDedicatedXafariServer, оно определяет режим работы Очереди: локальный режим или режим выделенного сервера. В локальном режиме Очередь Сообщений хранится в памяти компьютера, после закрытия приложения Очередь Сообщений удалится.

Чтобы переключить режим, измените config-файл приложения:

 

<appSettings>

<add key="UseDedicatedXafariServer" value="False" />

 

Значение "True" задает режим выделенного сервера, а "False" – локальный режим.

Чтобы получить нужный ObjectSpace, в зависимости от использования локального или выделенного сервера, воспользуйтесь методом CreateObjectSpace().