JRusbatch/CsvHelper — pull request #1 by JRusbatch (2012-06-05 16:07:22+00:00)
Title: Subclassing the CsvReader class breaks the GetRecord method.

Calling `GetRecord()` on a class that inherits from `CsvReader` causes the following exception to be thrown:

```
System.ArgumentException: ParameterExpression of type cannot be used for delegate parameter of type 'CsvHelper.CsvReader'
at System.Linq.Expressions.Expression.ValidateLambdaArgs(Type delegateType, Expression& body, ReadOnlyCollection`1 parameters)
at System.Linq.Expressions.Expression.Lambda[TDelegate](Expression body, String name, Boolean tailCall, IEnumerable`1 parameters)
at System.Linq.Expressions.Expression.Lambda[TDelegate](Expression body, Boolean tailCall, IEnumerable`1 parameters)
at CsvHelper.CsvReader.GetReadRecordFunc(Type recordType) CsvReader.cs:line 762
at CsvHelper.CsvReader.GetRecord(Type type) CsvReader.cs:line 513
```

I created a test that reproduces the issue, and adjusted the code in `CsvReader.GetReadRecordFunc()` to create a an `Expression>` instead of `Expression>`.