Interface ICsvTypeBinder<T>
Instance that binds CSV fields to members when reading and writing.
public interface ICsvTypeBinder<T> where T : unmanaged, IBinaryInteger<T>
Type Parameters
T
Methods
GetDematerializer<TValue>()
Returns a dematerializer for TValue
.
[RequiresUnreferencedCode("This code path uses reflection. Use the overloads accepting source generated CsvTypeMap for AOT/trimming compatible code.")]
[RequiresDynamicCode("This code path uses compiled expressions. Use the overloads accepting source generated CsvTypeMap for AOT/trimming compatible code.")]
IDematerializer<T, TValue> GetDematerializer<TValue>()
Returns
- IDematerializer<T, TValue>
Type Parameters
TValue
Exceptions
- CsvBindingException
Options is configured not to write a header, but
TValue
has no index binding.
GetMaterializer<TValue>()
Returns a materializer for TValue
bound to column indexes.
[RequiresUnreferencedCode("This code path uses reflection. Use the overloads accepting source generated CsvTypeMap for AOT/trimming compatible code.")]
[RequiresDynamicCode("This code path uses compiled expressions. Use the overloads accepting source generated CsvTypeMap for AOT/trimming compatible code.")]
IMaterializer<T, TValue> GetMaterializer<TValue>()
Returns
- IMaterializer<T, TValue>
Type Parameters
TValue
Exceptions
- CsvBindingException
Options is configured not to write a header, but
TValue
has no index binding.
GetMaterializer<TValue>(ReadOnlySpan<string>)
Returns a materializer for TValue
bound to a CSV header.
[RequiresUnreferencedCode("This code path uses reflection. Use the overloads accepting source generated CsvTypeMap for AOT/trimming compatible code.")]
[RequiresDynamicCode("This code path uses compiled expressions. Use the overloads accepting source generated CsvTypeMap for AOT/trimming compatible code.")]
IMaterializer<T, TValue> GetMaterializer<TValue>(ReadOnlySpan<string> headers)
Parameters
headers
ReadOnlySpan<string>
Returns
- IMaterializer<T, TValue>
Type Parameters
TValue