Цитата:
Сообщение от
Гуревич Денис
Ну а что значит "не выполняется"? С ошибкой падает? С какой?
Попробуйте для начала этот кусок кода вытащить в отдельное консольное приложение, так будет проще разобраться.
Если вытащить именно этот кусок кода в консольное приложение - он не будет работать, поскольку 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); }
}
}
}