/// <summary> /// Performs an Asynchronous delete, deleting entities that match the given set of name value pairs /// Use the querySet overload if performing multiple deletes /// </summary> /// <typeparam name="T">The type of Entity</typeparam> /// <param name="service">The service.</param> /// <param name="columnNameAndValuePairs">The column name and value pairs.</param> /// <returns></returns> public static BulkDeleteResult Delete <T>(this IOrganizationService service, params object[] columnNameAndValuePairs) where T : Entity { return(BulkDelete.Delete(service, new QueryExpression[] { QueryExpressionFactory.Create <T>(columnNameAndValuePairs) })); }
/// <summary> /// Gets first 5000 active entities (with the given subset of columns only) /// where the columnNameAndValue Pairs match /// </summary> /// <typeparam name="T">Type of Entity List to return</typeparam> /// <param name="service">The service.</param> /// <param name="columnSet">Columns to retrieve</param> /// <param name="columnNameAndValuePairs">List of pairs that look like this: /// (string name of the column, value of the column) ie. "name", "John Doe"</param> /// <returns></returns> public static List <T> GetEntities <T>(this IOrganizationService service, ColumnSet columnSet, params object[] columnNameAndValuePairs) where T : Entity { return(service.RetrieveList <T>(QueryExpressionFactory.Create <T>(columnSet, columnNameAndValuePairs))); }
/// <summary> /// Adds a retrieve multiple request to the current OrganizationRequestCollection. /// </summary> /// <typeparam name="T"></typeparam> /// <param name="requests">The requests.</param> /// <param name="columnNameAndValuePairs">The column name and value pairs.</param> public static void AddRetrieveMultiple <T>(this OrganizationRequestCollection requests, params object[] columnNameAndValuePairs) where T : Entity { requests.Add(new RetrieveMultipleRequest { Query = QueryExpressionFactory.Create <T>(columnNameAndValuePairs), }); }
/// <summary> /// Gets first 5000 Active Entities (with the given subset of columns only) /// where the columnNameAndValue Pairs match /// </summary> /// <param name="service"></param> /// <param name="logicalName">LogicalName of the Entity.</param> /// <param name="columnSet">Columns to retrieve</param> /// <param name="columnNameAndValuePairs">List of pairs that look like this: /// (string name of the column, value of the column) ie. "name", "John Doe" </param> /// <returns></returns> public static List <Entity> GetEntities(this IOrganizationService service, string logicalName, ColumnSet columnSet, params object[] columnNameAndValuePairs) { return(service.GetEntities <Entity>(QueryExpressionFactory.Create(logicalName, columnSet, columnNameAndValuePairs))); }
/// <summary> /// Gets all Entities where the columnNameAndValue Pairs match /// </summary> /// <typeparam name="T">Type of Entity List to return</typeparam> /// <param name="service"></param> /// <param name="columnSet">Columns to retrieve</param> /// <param name="columnNameAndValuePairs">List of pairs that look like this: /// (string name of the column, value of the column) ie. "name", "John Doe" </param> /// <returns></returns> public static IEnumerable <T> GetAllEntities <T>(this IOrganizationService service, ColumnSet columnSet, params object[] columnNameAndValuePairs) where T : Entity { return(service.GetAllEntities(QueryExpressionFactory.Create <T>(columnSet, columnNameAndValuePairs))); }
/// <summary> /// </summary> /// <param name="columnNameAndValuePairs">List of pairs that look like this: /// (string name of the column, value of the column) ie. "name","John Doe" goes to entity.name = "John Doe"</param> /// <returns></returns> public QueryExpression CreateExpression(params object[] columnNameAndValuePairs) { return(QueryExpressionFactory.Create(this, columnNameAndValuePairs)); }
/// <summary> /// Creates the expression. /// </summary> /// <returns></returns> public QueryExpression CreateExpression() { return(QueryExpressionFactory.Create(this)); }