DataCollection
Object Hierarchy:
Description:
Implementators will be able to execute a SELECT to get all objects in the database related to a parent object.
public class Address : Object, Vda.DataObject {
   // DataObject
   public string database_table_name { get; construct set; }
   public Vda.Connection database_connection { get; set; }
   public Cancellable cancellable { get; set; }
   // Database mapping
   [Description (nick="@id::pkey::auto")]
   public int id { get; set; }
   [Description (nick="@street")]
   public string street { get; set; }
   [Description (nick="@client::id")]
   public int client { get; set; }
   construct {
     database_table_name = "address";
   }
 }
 public class Addresses : Object, Vda.DataCollection {
   private string _parent_property;
   private DataObject _parent;
   private GLib.Type _object_type;
   private string _ref_field;
   public Vda.Connection database_connection { get; set; }
   public string parent_property { get { return _parent_property; } }
   public DataObject parent { get { return _parent; } }
   public GLib.Type object_type { get { return _object_type; } }
   public string ref_field{ get { return _ref_field; } }
   public Cancellable cancellable { get; set; }
   construct  {
     _parent_property = "id";
     _ref_field = "client";
     _object_type = typeof (Address);
   }
   public Addresses (Client client) {
     _parent = client;
   }
 }
 public class Client : Object, Vda.DataObject {
   Vda.Connection _cnc = null;
   // DataObject
   public string database_table_name { get; construct set; }
   public Vda.Connection database_connection {
     get {
       return _cnc;
     }
     set {
       _cnc = value;
       addresses.database_connection = _cnc;
     }
   }
   public Cancellable cancellable { get; set; }
   // Database mapping
  [Description (nick="@id::pkey::auto")]
   public int id { get; set; }
   [Description (nick="@name")]
   public string name { get; set; }
   [Description (nick="@description")]
   public string description { get; set; }
   [Description (nick="@phone::id")]
   public string phone { get; set; }
   public Addresses addresses { get; set; }
   construct {
    database_table_name = "clients";
     addresses = new Addresses (this);
   }
 }Using the above code a query, by accessing the Addresses object, you can call get_objects and a the following query will be executed:
SELECT * FROM address WHERE address.client = 100;Above number 100, is calculated from the current instance of Client object's id property.
Namespace: Vda
  
  Package: vda-1
  
  Content:
Properties:
Methods:
Inherited Members:
All known members inherited from class GLib.Object