dotConnect for PostgreSQL Documentation
Devart.Data.PostgreSql Namespace / PgSqlRow Class / Item Property / Item(PgSqlAttribute) Property
PgSqlAttribute to get value for.
Example

In This Topic
    Item(PgSqlAttribute) Property
    In This Topic
    Gets or sets the value of the specified attribute.
    Syntax
    'Declaration
     
    Public Overloads Property Item( _
       ByVal attribute As PgSqlAttribute _
    ) As Object
    public object Item( 
       PgSqlAttribute attribute
    ) {get; set;}

    Parameters

    attribute
    PgSqlAttribute to get value for.

    Property Value

    Value of the specified attribute.
    Example
    This sample demonstrates usage of PgSqlRow, PgSqlRowType, PgSqlAttribute, and PgSqlAttributeCollection classes. It retrieves data from a column of composite type in a table and renders the data to console. To run the samples successfully you have to create server objects with the following script: CREATE TYPE tperson AS (name text, age integer); CREATE TABLE personnel (id integer, person tperson);
    static void ReadData(PgSqlConnection conn)  
    { 
      string str = "SELECT person FROM personnel"; 
      PgSqlCommand pgCommand = new PgSqlCommand(str,conn); 
      PgSqlDataReader pgReader = pgCommand.ExecuteReader(); 
      while (pgReader.Read())  
      { 
        //obtain data
        PgSqlRow pgRow = pgReader.GetPgSqlRow(0);
        if (pgRow == null) 
        {
          Console.WriteLine();
          continue;
        }
        //obtain data description
        PgSqlRowType pgRowType = pgRow.RowType;
        //iterate through all columns
        foreach(PgSqlAttribute pgAttr in pgRowType.Attributes)
        {
          Console.Write(pgRow[pgAttr] + "\t"); 
        }
        Console.WriteLine();
      } 
      pgReader.Close(); 
    }
    Sub ReadData(ByVal conn As PgSqlConnection)
      Dim str As String = "SELECT person FROM personnel"
      Dim pgCommand As PgSqlCommand = New PgSqlCommand(str, conn)
      Dim pgReader As PgSqlDataReader = pgCommand.ExecuteReader()
      While pgReader.Read()
        'obtain data
        Dim pgRow As PgSqlRow = pgReader.GetPgSqlRow(0)
        If pgRow Is Nothing Then
          Console.WriteLine()
        Else
          'obtain data description
          Dim pgRowType As PgSqlRowType = pgRow.RowType
          'iterate through all columns
          For Each pgAttr As PgSqlAttribute In pgRowType.Attributes
            Console.Write(pgRow(pgAttr) & Chr(9))
          Next pgAttr
          Console.WriteLine()
        End If
      End While
      pgReader.Close()
    End Sub
    See Also