Migrations for complex and composed objects

I'm trying to write and read a complex object from/to DB in a controller. It has properties of type IDictionary<string, bool> and of another class I've created. It looks to me that Orchard migrations only support string, int, DateTime, bool and enums
- that are the types in Orchard.Data.Migration.Schema.SchemaUtils.ToDbType.

What would be the most straightforward way to read/write objects like this from a controller?