dotConnect Universal Documentation
Devart.Data.Universal Namespace / UniDataReader Class / GetValues Method
An array of System.Object into which to copy the attribute columns.
Example

In This Topic
    GetValues Method (UniDataReader)
    In This Topic
    Gets all attribute columns in the collection for the current row.
    Syntax
    'Declaration
     
    Public Overrides Function GetValues( _
       ByVal values() As Object _
    ) As Integer
    public override int GetValues( 
       object[] values
    )

    Parameters

    values
    An array of System.Object into which to copy the attribute columns.

    Return Value

    The number of instances of System.Object in the array.
    Remarks
    For most applications, the GetValues method provides an efficient means for retrieving all columns, rather than retrieving each column individually.

    You can pass an System.Object array that contains fewer than the number of columns contained in the resulting row. Only the amount of data the System.Object array holds is copied to the array. You can also pass an System.Object array whose length is more than the number of columns contained in the resulting row.

    This method returns System.DBNull for null database columns.

    Example
    The example shows how to retrieve several fields at once. Note that only the first three fields are retrieved, though there may be more in the table.
    public void GetObjects(UniConnection myConnection)
    {
      UniCommand cmd = new UniCommand("SELECT * FROM Test.Emp");
      cmd.Connection = myConnection;
      myConnection.Open();
      try
      {
        UniDataReader reader = cmd.ExecuteReader();
        reader.Read();
        object[] objs = new object[3];
        int quant = reader.GetValues(objs);
        for (int i=0;i < quant;i++)
        {
          Console.WriteLine(objs[i]);
        }
        reader.Close();
      }
      finally
      {
        myConnection.Close();
      }
    }
    Public Sub GetObjects(ByVal myConnection As UniConnection)
      Dim cmd As UniCommand = New UniCommand("SELECT * FROM Test.Dept")
      cmd.Connection = myConnection
      myConnection.Open()
      Try
        Dim reader As UniDataReader = cmd.ExecuteReader()
        reader.Read()
        Dim objs(3) As Object
        Dim quant As Integer = reader.GetValues(objs)
        Dim i As Integer
        For i = 0 To quant - 1
          Console.WriteLine(objs(i))
        Next i
        reader.Close()
      Finally
        myConnection.Close()
      End Try
    End Sub
    Requirements

    Target Platforms: Windows 7, Windows Vista SP1 or later, Windows XP SP3, Windows Server 2008 (Server Core not supported), Windows Server 2008 R2 (Server Core supported with SP1 or later), Windows Server 2003 SP2

    See Also