### Method

# EDataBook BookBackend dup_view_contacts

since: 3.50

#### Declaration [src]

    GPtrArray*
    e_book_backend_dup_view_contacts (
      EBookBackend* backend,
      gsize view_id,
      guint range_start,
      guint range_length
    )

#### Description [src]

Returns `range_length` contacts from 0-based index `range_start` in the view identified by the `view_id`. When there are asked more than `e_book_backend_get_view_n_total()` contacts only those up to the total number of contacts are read. Asking for out of range contacts results in an error, though it can return less than `range_length` contacts.

The default implementation tracks the view’s content in memory and returns the contacts as needed. The subclasses can do more efficient implementation.

Note: This function should be used only with `E_BOOK_CLIENT_VIEW_FLAGS_MANUAL_QUERY` views.

Available since: 3.50

#### Parameters

`view_id`

  Type: `gsize`

  A view identifier.

`range_start`

  Type: `guint`

  0-based range start to retrieve the contacts for.

`range_length`

  Type: `guint`

  How many contacts to retrieve.

#### Return value

Type: An array of `EContact*`

an array of the contacts, or `NULL`, when the view cannot be found or when the `range_start` is out of bounds.

The caller of the method takes ownership of the returned data container, but not the data inside it.
The return value can be `NULL`.