Single Step Retrieval¶
Important
Single Step Retrieval loads only a partial set of the related objects (default size of the retrieved related collection is 10). To load additional related objects, use the Relation Paging API .
This approach allows retrieval of a partial set of the related objects along with the parent object in a single find
or findById
request. Each relationship property (column) must be uniquely identified by name using the API documented below.
Retrieving a specific object with relations¶
Non-blocking call:
Backendless.Data.Of( "TABLE-NAME" ).FindById(
string objectId,
IList<string> relations,
AsyncCallback<Dictionary<string, object>> responder )
Dictionary<string, object> result = Backendless.Data.Of( "TABLE-NAME" ).FindById(
string objectId,
IList<string> relations )
Non-blocking call:
Backendless.Data.Of<E>().FindById(
string objectId,
IList<string> relations,
AsyncCallback<E> responder )
E result = Backendless.Data.Of( "TABLE-NAME" ).FindById(
string objectId,
IList<string> relations )
Retrieving a collection of objects with relations¶
DataQueryBuilder queryBuilder = Backendless.DataQueryBuilder.Create();
queryBuilder.AddRelated( "RELATED-PROPERTY-NAME" );
queryBuilder.AddRelated( "RELATED-PROPERTY-NAME.RELATION-OF-RELATION" );
Then load data using the constructed queryBuilder
object with:
Non-blocking call:
Backendless.Data.Of( "TABLE-NAME" ).Find(
DataQueryBuilder queryBuilder,
AsyncCallback<IList<Dictionary<string, object>>> callback )
IList<Dictionary<string, object>> result = Backendless.Data.Of( "TABLE-NAME" ).Find(
DataQueryBuilder queryBuilder )
Non-blocking call:
Backendless.Data.Of<E>().Find(
DataQueryBuilder queryBuilder,
AsyncCallback<IList<E>> callback )
IList<E> result = Backendless.Data.Of<E>().Find( DataQueryBuilder queryBuilder )
where
Argument | Description |
---|---|
RELATED-PROPERTY-NAME |
name of a related property to load. For example, if table Person has a relation "homeAddress " pointing to an object in the Address table, the value would be "homeAddress ". The syntax allows to add relations of relations. For example, if the same Address table has a relation "country " pointing to the Country table, then "homeAddress.country " would instruct the related Country object to be loaded as well. |
queryBuilder |
an instance of the DataQueryBuilder class. The class is used to identify related properties for relation retrieval. |
TABLE-NAME |
Name of the table where the data should be retrieved from. |
E |
Reference to a class which identifies a table where the data should be loaded from. |