I get the following error when I fire my plugin on phoncall create record in CRm Dynamics 2015,
public void Execute(IServiceProvider serviceProvider) { ITracingService tracingService = (ITracingService)serviceProvider.GetService(typeof(ITracingService));
IPluginExecutionContext context = (IPluginExecutionContext)serviceProvider.GetService(typeof(IPluginExecutionContext));
IOrganizationServiceFactory serviceFactory = (IOrganizationServiceFactory)serviceProvider.GetService(typeof(IOrganizationServiceFactory));
IOrganizationService service = serviceFactory.CreateOrganizationService(context.UserId);
if (context.InputParameters.Contains("Target") && context.InputParameters["Target"] is Entity)
{
Entity entity = (Entity)context.InputParameters["Target"];
if (context.MessageName == "Create")
{
try
{
Entity phoneCall = new Entity("phonecall");
Int64 NumberToCall = (Int64)phoneCall.Attributes["new_identity"];
Int64 ReceiveCallOn = (Int64)phoneCall.Attributes["new_destination"];
var apiKey = phoneCall.Attributes["new_apikey"].ToString();
Int64 fId = (Int64)phoneCall.Attributes["new_fid"];
Guid phoneResponse = service.Create(phoneCall);
BasicHttpBinding binding = new BasicHttpBinding();
binding.Name = "BasicHttpBinding_IService1";
binding.HostNameComparisonMode = HostNameComparisonMode.StrongWildcard;
binding.MessageEncoding = WSMessageEncoding.Text;
binding.TransferMode = TransferMode.Buffered;
binding.UseDefaultWebProxy = true;
binding.Security.Mode = BasicHttpSecurityMode.TransportCredentialOnly;
binding.Security.Transport.ClientCredentialType = HttpClientCredentialType.Windows;
binding.Security.Message.ClientCredentialType = BasicHttpMessageCredentialType.UserName;
binding.SendTimeout = new TimeSpan(0, 10, 0);
EndpointAddress endPointAddress = new EndpointAddress("http://localhost:62009/Service1.svc");
ServiceReference1.Service1Client client = new ServiceReference1.Service1Client(binding, endPointAddress);
client.ClientCredentials.Windows.AllowedImpersonationLevel = System.Security.Principal.TokenImpersonationLevel.Impersonation;
client.ChannelFactory.Credentials.Windows.ClientCredential = new System.Net.NetworkCredential("MSCRM\\Thabiso", "1pft?MG6bscu?g", "MSCRM0");
client.WebCall(NumberToCall, ReceiveCallOn, apiKey, fId);
}
catch (FaultException<OrganizationServiceFault> ex)
{
tracingService.Trace("MyPlugin: {0}", ex.ToString());
throw;
}
}