CsvConverterWriteTSource(IEnumerableTSource, CsvWriter, CsvMapping, ActionTSource, Object) Method

Writes the content of a collection of TSource instances as CSV.

Definition

Namespace: FolkerKinzel.CsvTools.Mappings
Assembly: FolkerKinzel.CsvTools.Mappings (in FolkerKinzel.CsvTools.Mappings.dll) Version: 1.1.0+1263e8243dc2cd78095f678f813d7d9c52ea4315
C#
public static void Write<TSource>(
	IEnumerable<TSource> data,
	CsvWriter writer,
	CsvMapping mapping,
	Action<TSource, Object> conversion
)

Parameters

data  IEnumerableTSource
The data to write as CSV. Each item will be represented with a CSV row.
writer  CsvWriter
The CsvWriter used for writing.
mapping  CsvMapping
The CsvMapping used to convert a TSource instance to a CSV row.
conversion  ActionTSource, Object

A method that fills the content of a TSource instance into the properties of mapping.

conversion is called with each CSV row to be written and it gets the TSource instance and mapping as arguments. mapping is passed to the method as dynamic argument: Inside the conversion method the registered DynamicProperty instances can be used like regular .NET properties, but without IntelliSense ("late binding").

With each call of conversion all DynamicProperty instances in mapping are reset to their DefaultValue.

Type Parameters

TSource
Generic type parameter for the data type to write as CSV row.

Exceptions

ArgumentNullExceptiondata, or writer, or mapping, or conversion is null.
IOExceptionI/O error.
ObjectDisposedExceptionThe file was already closed.

See Also