public CRMEntity GetConfigurationHostedControlM2MEntity(IOrganizationService service, string fetchXml) { EntityCollection results = service.RetrieveMultiple(new FetchExpression(fetchXml)); if (results != null && results.Entities != null && results.Entities.Count > 0) { List <CRMM2MRecord> crmM2MRecords = new List <CRMM2MRecord>(); foreach (Entity entity in results.Entities) { Guid configurationId = entity.GetAttributeValue <Guid>("msdyusd_configurationid"); Guid hostedControlId = entity.GetAttributeValue <Guid>("uii_hostedapplicationid"); CRMM2MRecord m2mRecord = new CRMM2MRecord { Entity1AttributeId = configurationId, Entity1LogicalName = "msdyusd_configuration", Entity2AttributeId = hostedControlId, Entity2LogicalName = "uii_hostedapplication" }; crmM2MRecords.Add(m2mRecord); } CRMEntity crmEntity = new CRMEntity { CRMM2MRecords = crmM2MRecords, IsIntersect = true, LogicalName = results.EntityName, RecordCount = results.Entities.Count }; return(crmEntity); } return(null); }
public static Entity ToEntity(this CRMM2MRecord crmM2MRecord, CRMM2MEntityMapping m2mEntityMapping, Dictionary <Guid, Guid> sourceTargetIdMappings) { Entity entity = null; if (crmM2MRecord == null) { return(entity); } entity = new Entity(crmM2MRecord.EntityLogicalName); entity[m2mEntityMapping.Entity1Attribute] = crmM2MRecord.Entity1AttributeId; entity[m2mEntityMapping.Entity2Attribute] = crmM2MRecord.Entity2AttributeId; return(entity); }
public CRMEntity GetCRMEntityM2M(IOrganizationService service, QueryExpression query, CRMM2MEntityMapping crmM2MEntityMapping) { EntityCollection results = service.RetrieveMultiple(query); if (results != null && results.Entities != null && results.Entities.Count > 0) { List <CRMM2MRecord> records = new List <CRMM2MRecord>(); foreach (Entity entity in results.Entities) { CRMM2MRecord crmM2MRecord = entity.ToCRMM2MRecord(crmM2MEntityMapping); records.Add(crmM2MRecord); } CRMEntity crmEntity = new CRMEntity { CRMM2MRecords = records, IsIntersect = true, LogicalName = results.EntityName, RecordCount = results.Entities.Count }; return(crmEntity); } return(null); }
public static CRMM2MRecord ToCRMM2MRecord(this Entity entity, CRMM2MEntityMapping crmM2MEntityMapping) { CRMM2MRecord crmM2Mrecord = null; if (entity == null) { return(crmM2Mrecord); } Guid entity1AttributeId = entity.GetAttributeValue <Guid>(crmM2MEntityMapping.Entity1Attribute); Guid entity2AttributeId = entity.GetAttributeValue <Guid>(crmM2MEntityMapping.Entity2Attribute); crmM2Mrecord = new CRMM2MRecord { EntityLogicalName = entity.LogicalName, Entity1LogicalName = crmM2MEntityMapping.Entity1, Entity1AttributeId = entity1AttributeId, Entity2LogicalName = crmM2MEntityMapping.Entity2, Entity2AttributeId = entity2AttributeId }; return(crmM2Mrecord); }