Table of Contents

Method OfType

Namespace
MongoDB.Driver
Assembly
MongoDB.Driver.dll

OfType<TDerived>()

Creates an OfType filter that matches documents of a derived type.

public FilterDefinition<TDocument> OfType<TDerived>() where TDerived : TDocument

Returns

FilterDefinition<TDocument>

An OfType filter.

Type Parameters

TDerived

The type of the matching derived documents.

OfType<TDerived>(FilterDefinition<TDerived>)

Creates an OfType filter that matches documents of a derived type and that also match a filter on the derived document.

public FilterDefinition<TDocument> OfType<TDerived>(FilterDefinition<TDerived> derivedDocumentFilter) where TDerived : TDocument

Parameters

derivedDocumentFilter FilterDefinition<TDerived>

A filter on the derived document.

Returns

FilterDefinition<TDocument>

An OfType filter.

Type Parameters

TDerived

The type of the matching derived documents.

OfType<TDerived>(Expression<Func<TDerived, bool>>)

Creates an OfType filter that matches documents of a derived type and that also match a filter on the derived document.

public FilterDefinition<TDocument> OfType<TDerived>(Expression<Func<TDerived, bool>> derivedDocumentFilter) where TDerived : TDocument

Parameters

derivedDocumentFilter Expression<Func<TDerived, bool>>

A filter on the derived document.

Returns

FilterDefinition<TDocument>

An OfType filter.

Type Parameters

TDerived

The type of the matching derived documents.

OfType<TField, TDerived>(FieldDefinition<TDocument, TField>)

Creates an OfType filter that matches documents with a field of a derived typer.

public FilterDefinition<TDocument> OfType<TField, TDerived>(FieldDefinition<TDocument, TField> field) where TDerived : TField

Parameters

field FieldDefinition<TDocument, TField>

The field.

Returns

FilterDefinition<TDocument>

An OfType filter.

Type Parameters

TField

The type of the field.

TDerived

The type of the matching derived field value.

OfType<TField, TDerived>(FieldDefinition<TDocument, TField>, FilterDefinition<TDerived>)

Creates an OfType filter that matches documents with a field of a derived type and that also match a filter on the derived field.

public FilterDefinition<TDocument> OfType<TField, TDerived>(FieldDefinition<TDocument, TField> field, FilterDefinition<TDerived> derivedFieldFilter) where TDerived : TField

Parameters

field FieldDefinition<TDocument, TField>

The field.

derivedFieldFilter FilterDefinition<TDerived>

A filter on the derived field.

Returns

FilterDefinition<TDocument>

An OfType filter.

Type Parameters

TField

The type of the field.

TDerived

The type of the matching derived field value.

OfType<TField, TDerived>(Expression<Func<TDocument, TField>>)

Creates an OfType filter that matches documents with a field of a derived type.

public FilterDefinition<TDocument> OfType<TField, TDerived>(Expression<Func<TDocument, TField>> field) where TDerived : TField

Parameters

field Expression<Func<TDocument, TField>>

The field.

Returns

FilterDefinition<TDocument>

An OfType filter.

Type Parameters

TField

The type of the field.

TDerived

The type of the matching derived field value.

OfType<TField, TDerived>(Expression<Func<TDocument, TField>>, Expression<Func<TDerived, bool>>)

Creates an OfType filter that matches documents with a field of a derived type and that also match a filter on the derived field.

public FilterDefinition<TDocument> OfType<TField, TDerived>(Expression<Func<TDocument, TField>> field, Expression<Func<TDerived, bool>> derivedFieldFilter) where TDerived : TField

Parameters

field Expression<Func<TDocument, TField>>

The field.

derivedFieldFilter Expression<Func<TDerived, bool>>

A filter on the derived field.

Returns

FilterDefinition<TDocument>

An OfType filter.

Type Parameters

TField

The type of the field.

TDerived

The type of the matching derived field value.