/// <summary> /// Inserts the given rows if they do not exist. /// </summary> /// <param name="objs">The objects to insert.</param> /// <param name="commandTimeout">Number of seconds before command execution timeout.</param> /// <returns>The number of rows inserted.</returns> public int BulkInsertIfNotExists(IEnumerable <T> objs, int commandTimeout = 30) { int count; if (AutoKeyColumn != null) { long maxAutoKey = MaxAutoKey(); count = Access.BulkInsertIfNotExists(objs, commandTimeout); GetList($"WHERE {AutoKeyColumn.ColumnName} > {maxAutoKey}", commandTimeout); } else { count = Access.BulkInsertIfNotExists(objs, commandTimeout); BulkGet(objs); } return(count); }