Показать сообщение отдельно
Старый 08.07.2010, 12:17   #4  
a33ik is offline
a33ik
Чайный пьяница
Аватар для a33ik
MCP
MCBMSS
Злыдни
Соотечественники
Most Valuable Professional
Лучший по профессии 2017
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
 
3,243 / 896 (36) +++++++
Регистрация: 02.07.2008
Адрес: Greenville, SC
Цитата:
Сообщение от Гуревич Денис Посмотреть сообщение
Ну а что значит "не выполняется"? С ошибкой падает? С какой?
Попробуйте для начала этот кусок кода вытащить в отдельное консольное приложение, так будет проще разобраться.
Если вытащить именно этот кусок кода в консольное приложение - он не будет работать, поскольку context используется.

Не совсем понятно зачем этот ретрив стоит. Попробуйте использовать следующий код:

Код:
namespace CRM_SendMailActivity
{
    [CrmWorkflowActivity("Send Mail")]
    public partial class SendMailActivity : SequenceActivity
    {
        protected override ActivityExecutionStatus Execute(ActivityExecutionContext executionContext)
        {
            IContextService contextService = (IContextService)executionContext.GetService(typeof(IContextService));
            IWorkflowContext workflowContext = contextService.Context;
            ICrmService crmservice = workflowContext.CreateCrmService(true);
            Guid EmailId = new Guid(EntityIDIN);

            SendEmailRequest sendrequest = new SendEmailRequest();
            sendrequest.EmailId = EmailId;
            sendrequest.TrackingToken = "";
            sendrequest.IssueSend = true;

	    try
            {
            	crmservice.Execute(sendrequest);
	    }
	    catch (SoapException sexc)
	    {
		throw new Exception(sexc.Detail.InnerText);
	    }

            return ActivityExecutionStatus.Closed;
        }

        public static readonly DependencyProperty EntityIDINProperty =
            DependencyProperty.Register("EntityIDIN", typeof(string), typeof(SendMailActivity));

        [CrmInput("Entity ID InpuT")]
        public string EntityIDIN
        {
            get { return (string)GetValue(EntityIDINProperty); }
            set { SetValue(EntityIDINProperty, value); }
        }
    }
}
__________________
Эмо разработчик, сначала пишу код, потом плачу над его несовершенством.

Подписывайтесь на мой блог, twitter и YouTube канал.
Пользуйтесь моим Ultimate Workflow Toolkit