```
[Serializable]
public abstract class AbstractModel : ObservableObject
{
    // nothing.
}

public class RealModel : AbstractModel 
{
    public string PropertyA {get; set;}
    public string PropertyB {get; set;}
}

```

Note that `ObservableObject` is from Mvvm-light.

With above models, I used [CsvHelper](https://joshclose.github.io/CsvHelper/) as below.

```
AbstractModel instance = new RealModel()
                             {
                                 PropertyA = "foo",
                                 PropertyA = "bar"
                             };

using (TextWriter file = new StreamWriter("path"))
using (var csv = new CsvWriter(file))
{
    csv.WriteRecord(instance);
}

```

It throws error as below;

> 
> No properties are mapped for type 'AbstractModel'
> 
> 
> 

It works fine when I set `RealModel instance = new RealModel();` instead. But, I have various derived classes and want to save them in a single Save method. 

How can I do?