private static EntityCollection GetRelatedSubStandards(IOrganizationService service, EntityCollection standardList, Entity entity) { EntityCollection subStandardList = new EntityCollection(); foreach (Entity Standard in standardList.Entities) { #region Create Standard Instances //Create the Inspection Standard. Entity inspectionStandard = new Entity("net_inspectionstandard"); string standardName = Standard.GetAttributeValue <string>("net_name"); inspectionStandard["net_name"] = standardName; inspectionStandard["net_standard"] = new EntityReference("net_standard", Standard.Id); inspectionStandard["net_workorder"] = new EntityReference("msdyn_workorder", entity.Id); service.Create(inspectionStandard); #endregion #region Get All Domains //Query over all Domains that are related to that standard. ConditionExpression conditionExpression = new ConditionExpression(); conditionExpression.AttributeName = "net_standard"; conditionExpression.Operator = ConditionOperator.Equal; conditionExpression.Values.Add(Standard.Id); FilterExpression filterExpression = new FilterExpression(); filterExpression.Conditions.Add(conditionExpression); QueryExpression queryExpression = new QueryExpression("net_substandard"); queryExpression.ColumnSet = new ColumnSet(true); queryExpression.Criteria.AddFilter(filterExpression); //Retrieve a collection of sub standards related to that standard. EntityCollection partialSubStandardList = service.RetrieveMultiple(queryExpression); foreach (Entity subStandard in partialSubStandardList.Entities) { subStandardList.Entities.Add(subStandard); } #endregion } return(subStandardList); }