private void AttachSalesLiteratureItemsToEmail(ICrmService service, Guid SalesLiteratureID, Guid EmailID, ref CrmNumber attachNo)
{
   
// condition
   
ConditionExpression condition = new ConditionExpression();
    condition.AttributeName =
"salesliteratureid";
    condition.Operator =
ConditionOperator.Equal;
    condition.Values =
new object[] { SalesLiteratureID.ToString() };
   
//filter
   
FilterExpression filter = new FilterExpression();
    filter.FilterOperator =
LogicalOperator.And;
    filter.Conditions.Add(condition);
   
// new query
   
QueryExpression query = new QueryExpression();
    query.EntityName =
EntityName.salesliteratureitem.ToString();
    query.ColumnSet =
new AllColumns();
    query.Criteria = filter;
   
// request object
   
RetrieveMultipleRequest retrieve = new RetrieveMultipleRequest();
    retrieve.Query = query;
   
// execute
   
RetrieveMultipleResponse retrieved = (RetrieveMultipleResponse)service.Execute(retrieve);
   
// do for each
   
foreach (object o in retrieved.BusinessEntityCollection.BusinessEntities)
    {  
// cast
        salesliteratureitem sli = (salesliteratureitem)o;
       
// attach
       
this.AttachSalesLiteratureItemToEmail(service, sli, EmailID, ref attachNo);
    }
}