CopyToAsync
CopyToAsync returns a Task-based asynchronous version of OracleClob.CopyTo(), which copies data from the current instance to the provided OracleClob object.
Overload List:
-
CopyToAsync(Int64, OracleClob, Int64, Int64)
This method returns a Task-based asynchronous version of
OracleClob.CopyTo(), which copies data from the current instance to the providedOracleClobobject. -
CopyToAsync(Int64, OracleClob, Int64, Int64, CancellationToken)
This method returns a Task-based asynchronous version of
OracleClob.CopyTo(), which copies data from the current instance to the providedOracleClobobject. -
CopyToAsync(OracleClob, Int64)
This method returns a Task-based asynchronous version of
OracleClob.CopyTo(), which copies data from the current instance to the providedOracleClobobject. -
CopyToAsync(OracleClob, Int64, CancellationToken)
This method returns a Task-based asynchronous version of
OracleClob.CopyTo(), which copies data from the current instance to the providedOracleClobobject. -
This method returns a Task-based asynchronous version of
OracleClob.CopyTo(), which copies data from the current instance to the providedOracleClobobject. -
CopyToAsync(OracleClob, CancellationToken)
This method returns a Task-based asynchronous version of
OracleClob.CopyTo(), which copies data from the current instance to the providedOracleClobobject.
Example
using Oracle.ManagedDataAccess.Client;
using Oracle.ManagedDataAccess.Types;
using System;
using System.Threading;
namespace AsyncApp
{
class AsyncDemo
{
static async Task Main(string[] args)
{
string connectionString = "User Id=HR; Password=<PASSWORD>; Data Source=oracle;";
OracleConnection oc = new OracleConnection(connectionString);
await oc.OpenAsync(CancellationToken.None);
OracleCommand cmd = oc.CreateCommand();
cmd.CommandText = " select clob_column from tab1";
OracleClob clob1 = new OracleClob(oc);
OracleClob clob2 = new OracleClob(oc);
OracleClob clob3 = new OracleClob(oc);
OracleClob clob4 = new OracleClob(oc);
OracleClob clob5 = new OracleClob(oc);
OracleClob clob6 = new OracleClob(oc);
OracleDataReader reader = await cmd.ExecuteReaderAsync();
await reader.ReadAsync(CancellationToken.None);
using (OracleClob clob = reader.GetOracleClob(0))
{
//asynchronously copy clob data
Int64 charsCopied1 = await clob.CopyToAsync(0, clob1, 0, clob.Length);
Console.WriteLine("chars copied to clob1 = " + charsCopied1);
//asynchronously copy clob data
Int64 charsCopied2 = await clob.CopyToAsync(0, clob2, 0, clob.Length, CancellationToken.None);
Console.WriteLine("chars copied to clob2 = " + charsCopied2);
//asynchronously copy clob data
Int64 charsCopied3 = await clob.CopyToAsync(clob3, 0);
Console.WriteLine("chars copied to clob3 = " + charsCopied3);
//asynchronously copy clob data
Int64 charsCopied4 = await clob.CopyToAsync(clob4, 0, CancellationToken.None);
Console.WriteLine("chars copied to clob4 = " + charsCopied4);
//asynchronously copy clob data
Int64 charsCopied5 = await clob.CopyToAsync(clob5);
Console.WriteLine("chars copied to clob5 = " + charsCopied5);
//asynchronously copy clob data
Int64 charsCopied6 = await clob.CopyToAsync(clob6, CancellationToken.None);
Console.WriteLine("chars copied to clob6 = " + charsCopied6);
}
}
}
}