Show / Hide Table of Contents

Class TimeTzHandler

A type handler for the PostgreSQL timetz data type.

Inheritance
System.Object
NpgsqlTypeHandler
NpgsqlTypeHandler<System.DateTimeOffset>
NpgsqlSimpleTypeHandler<System.DateTimeOffset>
TimeTzHandler
Implements
INpgsqlTypeHandler<System.DateTimeOffset>
INpgsqlSimpleTypeHandler<System.DateTimeOffset>
INpgsqlSimpleTypeHandler<System.DateTime>
INpgsqlSimpleTypeHandler<System.TimeSpan>
Inherited Members
NpgsqlSimpleTypeHandler<DateTimeOffset>.Read(NpgsqlReadBuffer, Int32, Boolean, FieldDescription)
NpgsqlSimpleTypeHandler<DateTimeOffset>.Read<TAny>(NpgsqlReadBuffer, Int32, Boolean, FieldDescription)
NpgsqlSimpleTypeHandler<DateTimeOffset>.Read<TAny>(NpgsqlReadBuffer, Int32, FieldDescription)
NpgsqlSimpleTypeHandler<DateTimeOffset>.ValidateAndGetLength<TAny>(TAny, NpgsqlLengthCache, NpgsqlParameter)
NpgsqlSimpleTypeHandler<DateTimeOffset>.Write(DateTimeOffset, NpgsqlWriteBuffer, NpgsqlLengthCache, NpgsqlParameter, Boolean)
NpgsqlSimpleTypeHandler<DateTimeOffset>.ValidateAndGetLength(DateTimeOffset, NpgsqlLengthCache, NpgsqlParameter)
NpgsqlSimpleTypeHandler<DateTimeOffset>.ValidateObjectAndGetLength(Object, NpgsqlLengthCache, NpgsqlParameter)
NpgsqlSimpleTypeHandler<DateTimeOffset>.WriteObjectWithLength(Object, NpgsqlWriteBuffer, NpgsqlLengthCache, NpgsqlParameter, Boolean)
NpgsqlTypeHandler<DateTimeOffset>.WriteWithLength<TAny>(TAny, NpgsqlWriteBuffer, NpgsqlLengthCache, NpgsqlParameter, Boolean)
NpgsqlTypeHandler<DateTimeOffset>.CreateArrayHandler(PostgresArrayType)
NpgsqlTypeHandler<DateTimeOffset>.CreateRangeHandler(PostgresRangeType)
NpgsqlTypeHandler.CreateConversionButNoParamException(Type)
System.Object.ToString()
System.Object.Equals(System.Object)
System.Object.Equals(System.Object, System.Object)
System.Object.ReferenceEquals(System.Object, System.Object)
System.Object.GetHashCode()
System.Object.GetType()
System.Object.MemberwiseClone()
Namespace: Npgsql.TypeHandlers.DateTimeHandlers
Assembly: Npgsql.dll
Syntax
public class TimeTzHandler : NpgsqlSimpleTypeHandler<DateTimeOffset>, INpgsqlTypeHandler<DateTimeOffset>, INpgsqlSimpleTypeHandler<DateTimeOffset>, INpgsqlSimpleTypeHandler<DateTime>, INpgsqlSimpleTypeHandler<TimeSpan>
Remarks

See http://www.postgresql.org/docs/current/static/datatype-datetime.html.

The type handler API allows customizing Npgsql's behavior in powerful ways. However, although it is public, it should be considered somewhat unstable, and may change in breaking ways, including in non-major releases. Use it at your own risk.

Constructors

TimeTzHandler(PostgresType)

Constructs an TimeTzHandler.

Declaration
public TimeTzHandler(PostgresType postgresType)
Parameters
Type Name Description
PostgresType postgresType

Methods

Read(NpgsqlReadBuffer, Int32, FieldDescription)

Reads a value of type TDefault with the given length from the provided buffer, with the assumption that it is entirely present in the provided memory buffer and no I/O will be required.

Declaration
public override DateTimeOffset Read(NpgsqlReadBuffer buf, int len, FieldDescription fieldDescription = null)
Parameters
Type Name Description
NpgsqlReadBuffer buf

The buffer from which to read.

System.Int32 len

The byte length of the value. The buffer might not contain the full length, requiring I/O to be performed.

FieldDescription fieldDescription

Additional PostgreSQL information about the type, such as the length in varchar(30).

Returns
Type Description
System.DateTimeOffset

The fully-read value.

Overrides
Npgsql.TypeHandling.NpgsqlSimpleTypeHandler<System.DateTimeOffset>.Read(Npgsql.NpgsqlReadBuffer, System.Int32, Npgsql.BackendMessages.FieldDescription)

ValidateAndGetLength(DateTime, NpgsqlParameter)

Responsible for validating that a value represents a value of the correct and which can be written for PostgreSQL - if the value cannot be written for any reason, an exception shold be thrown. Also returns the byte length needed to write the value.

Declaration
public int ValidateAndGetLength(DateTime value, NpgsqlParameter parameter)
Parameters
Type Name Description
System.DateTime value
NpgsqlParameter parameter

The NpgsqlParameter instance where this value resides. Can be used to access additional information relevant to the write process (e.g. Size).

Returns
Type Description
System.Int32

The number of bytes required to write the value.

ValidateAndGetLength(DateTimeOffset, NpgsqlParameter)

Responsible for validating that a value represents a value of the correct and which can be written for PostgreSQL - if the value cannot be written for any reason, an exception shold be thrown. Also returns the byte length needed to write the value.

Declaration
public override int ValidateAndGetLength(DateTimeOffset value, NpgsqlParameter parameter)
Parameters
Type Name Description
System.DateTimeOffset value
NpgsqlParameter parameter

The NpgsqlParameter instance where this value resides. Can be used to access additional information relevant to the write process (e.g. Size).

Returns
Type Description
System.Int32

The number of bytes required to write the value.

Overrides
Npgsql.TypeHandling.NpgsqlSimpleTypeHandler<System.DateTimeOffset>.ValidateAndGetLength(System.DateTimeOffset, Npgsql.NpgsqlParameter)

ValidateAndGetLength(TimeSpan, NpgsqlParameter)

Responsible for validating that a value represents a value of the correct and which can be written for PostgreSQL - if the value cannot be written for any reason, an exception shold be thrown. Also returns the byte length needed to write the value.

Declaration
public int ValidateAndGetLength(TimeSpan value, NpgsqlParameter parameter)
Parameters
Type Name Description
System.TimeSpan value
NpgsqlParameter parameter

The NpgsqlParameter instance where this value resides. Can be used to access additional information relevant to the write process (e.g. Size).

Returns
Type Description
System.Int32

The number of bytes required to write the value.

Write(DateTime, NpgsqlWriteBuffer, NpgsqlParameter)

Writes a value to the provided buffer, with the assumption that there is enough space in the buffer (no I/O will occur). The Npgsql core will have taken care of that.

Declaration
public void Write(DateTime value, NpgsqlWriteBuffer buf, NpgsqlParameter parameter)
Parameters
Type Name Description
System.DateTime value
NpgsqlWriteBuffer buf

The buffer to which to write.

NpgsqlParameter parameter

The NpgsqlParameter instance where this value resides. Can be used to access additional information relevant to the write process (e.g. Size).

Write(DateTimeOffset, NpgsqlWriteBuffer, NpgsqlParameter)

Writes a value to the provided buffer, with the assumption that there is enough space in the buffer (no I/O will occur). The Npgsql core will have taken care of that.

Declaration
public override void Write(DateTimeOffset value, NpgsqlWriteBuffer buf, NpgsqlParameter parameter)
Parameters
Type Name Description
System.DateTimeOffset value
NpgsqlWriteBuffer buf

The buffer to which to write.

NpgsqlParameter parameter

The NpgsqlParameter instance where this value resides. Can be used to access additional information relevant to the write process (e.g. Size).

Overrides
Npgsql.TypeHandling.NpgsqlSimpleTypeHandler<System.DateTimeOffset>.Write(System.DateTimeOffset, Npgsql.NpgsqlWriteBuffer, Npgsql.NpgsqlParameter)

Write(TimeSpan, NpgsqlWriteBuffer, NpgsqlParameter)

Writes a value to the provided buffer, with the assumption that there is enough space in the buffer (no I/O will occur). The Npgsql core will have taken care of that.

Declaration
public void Write(TimeSpan value, NpgsqlWriteBuffer buf, NpgsqlParameter parameter)
Parameters
Type Name Description
System.TimeSpan value
NpgsqlWriteBuffer buf

The buffer to which to write.

NpgsqlParameter parameter

The NpgsqlParameter instance where this value resides. Can be used to access additional information relevant to the write process (e.g. Size).

Explicit Interface Implementations

INpgsqlSimpleTypeHandler<DateTime>.Read(NpgsqlReadBuffer, Int32, FieldDescription)

Declaration
DateTime INpgsqlSimpleTypeHandler<DateTime>.Read(NpgsqlReadBuffer buf, int len, FieldDescription fieldDescription)
Parameters
Type Name Description
NpgsqlReadBuffer buf
System.Int32 len
FieldDescription fieldDescription
Returns
Type Description
System.DateTime

INpgsqlSimpleTypeHandler<TimeSpan>.Read(NpgsqlReadBuffer, Int32, FieldDescription)

Declaration
TimeSpan INpgsqlSimpleTypeHandler<TimeSpan>.Read(NpgsqlReadBuffer buf, int len, FieldDescription fieldDescription)
Parameters
Type Name Description
NpgsqlReadBuffer buf
System.Int32 len
FieldDescription fieldDescription
Returns
Type Description
System.TimeSpan

Implements

INpgsqlTypeHandler<T>
INpgsqlSimpleTypeHandler<T>
INpgsqlSimpleTypeHandler<T>
INpgsqlSimpleTypeHandler<T>
In This Article
Back to top Generated by DocFX