Exception:
s:ClientUnexpected exception from plug-in (Execute): DemoCompanySFA.Plugin.PreQualifyLead: System.TypeLoadException: Inheritance security rules violated while overriding member: 'DemoCompanySFA.Integration.DeviceRegistrationFailedException.GetObjectData(System.Runtime.Serialization.SerializationInfo, System.Runtime.Serialization.StreamingContext)'. Security accessibility of the overriding method must match the security accessibility of the method being overriden.-2147220956Unexpected exception from plug-in (Execute): DemoCompanySFA.Plugin.PreQualifyLead: System.TypeLoadException: Inheritance security rules violated while overriding member: 'DemoCompanySFA.Integration.DeviceRegistrationFailedException.GetObjectData(System.Runtime.Serialization.SerializationInfo, System.Runtime.Serialization.StreamingContext)'. Security accessibility of the overriding method must match the security accessibility of the method being overriden.2015-11-13T09:39:56.2669162Z [DemoCompanySFA: DemoCompanySFA.Plugin.PreQualifyLead] [9916b4aa-8289-e511-80d3-000c294e92d6: DemoCompanySFA.Plugin.PreQualifyLead: QualifyLead of lead]
Here is my plugin code:
public void Execute(IServiceProvider serviceProvider)
{
ITracingService tracingService = (ITracingService)serviceProvider.GetService(typeof(ITracingService));
IPluginExecutionContext executionContext = (IPluginExecutionContext)serviceProvider.GetService(typeof(IPluginExecutionContext));
IOrganizationServiceFactory servicefactory = (IOrganizationServiceFactory)serviceProvider.GetService(typeof(IOrganizationServiceFactory));
IOrganizationService service = servicefactory.CreateOrganizationService(executionContext.UserId);
try
{
XrmServiceContext context = new XrmServiceContext(service);
EntityReference leadid = (EntityReference)executionContext.InputParameters["LeadId"];
#region Check Activities
var activities = context.ActivityPointerSet.Where(m => m.RegardingObjectId == leadid.Id);
if (activities == null || activities.Count() < 1)
{
throw new InvalidPluginExecutionException("Lütfen Nitelikli hale getirmeden önce aktivite ekleyiniz.");
}
#endregion
#region Check Fields
Lead lead = (Lead)context.LeadSet.Where(m => m.Id == leadid.Id).FirstOrDefault();
if (lead != null)
{
if (lead.demo_jobtitle == null || lead.Telephone1 == null || lead.MobilePhone == null || lead.EMailAddress1 == null)
{
throw new InvalidPluginExecutionException("Unvan, telefon/cep telefonu ve email alanlarinin doldurulmasi zorunludur.");
}
}
#endregion
}
catch (FaultException<OrganizationServiceFault> ex)
{
throw new InvalidPluginExecutionException("An error occurred in the FollowupPlugin plug-in.", ex);
}
}Exception throwing from " var activities = context.ActivityPointerSet.Where(m => m.RegardingObjectId == leadid);"
Any idea?