示例#1
0
        public static void SendLocalOrRemote(MessageItem messageItem, bool copyToSentItems = true, bool ignoreSendAsRight = true)
        {
            MailboxSession mailboxSession = messageItem.Session as MailboxSession;

            if (mailboxSession != null && mailboxSession.MailboxOwner.MailboxInfo.IsAggregated && mailboxSession.ActivitySession != null)
            {
                messageItem.From = CalendarItemBase.GetAggregatedOwner(mailboxSession);
                if (messageItem.StoreObjectId == null)
                {
                    messageItem.Save(SaveMode.NoConflictResolution);
                    messageItem.Load();
                }
                messageItem.RemoteSend();
                return;
            }
            SubmitMessageFlags submitFlags = ignoreSendAsRight ? SubmitMessageFlags.IgnoreSendAsRight : SubmitMessageFlags.None;

            if (copyToSentItems)
            {
                messageItem.Send(submitFlags);
                return;
            }
            messageItem.SendWithoutSavingMessage(submitFlags);
        }
示例#2
0
 void ICoreItem.Submit(SubmitMessageFlags submitFlags)
 {
     this.CoreItem.Submit(submitFlags);
 }