AutoMapper 0.3 Beta released


Today, I dropped AutoMapper 0.3 Beta.  From the release notes:

New Features

  • Mapping to interfaces
    • Do not need any implementation configured
    • Implementation is created at runtime using proxies
  • Dynamic mapping
    • Do not need to configure source/destination type
    • Used with Mapper.DynamicMap
    • Checks configuration before executing the map
    • Allows mapping from anonymous types source
  • Mapping to fields on the destination type
  • Configuring null destination objects behavior
  • Mapping to IDictionary<,>
  • Configuring global constructors for IValueFormatters, IValueResolvers, and ITypeConverters
    • Common use is to substitute an IoC container

Enhancements

  • Configuration validation does a dry run, includes array element type checking
  • Better configuration exception messages
  • Better mapping exception messages, gives resolution context hierarchy
  • Mapping to camelCase members
  • Custom top-level type converters with ITypeConverter<TSource, TDestination>

Bugs Fixed

  • Configuration validation did not respect ignored destination members
  • Support for international characters in member names

Thanks

Thanks to the following peeps that sent in patches or made contributions otherwise:
jordanterrell, Jeffrey Palermo, hallgrim.flatland, smh, pacoaw

This release was a lot of fun, as I got to play with dynamic proxies, and cleaned up quite a bit of the semantic model.  As a reminder, you can always check out the samples or the unit tests in the trunk for specific examples on how to use all the features.  Enjoy!

Adventures with IL Merge