DarthFubuMVC/fubucore — pull request #20 by emiaj (2012-02-07 04:50:45+00:00)
Title: Introduced ObjectTypeFamily

If you look at 6675c623dd593de16f617277416764043e45f256, the usage of PassthroughConverter has been removed from fubucore.

Also, fubumvc updated itself to this change by introducing its own aspnet specific converter family:
https://github.com/DarthFubuMVC/fubumvc/commit/a07dc932a093da74f95fb02e56e50b4eddd0fce2#L0R222
https://github.com/DarthFubuMVC/fubumvc/commit/a07dc932a093da74f95fb02e56e50b4eddd0fce2#diff-2

This custom family converter does not inherits from PassthroughConverter, and has a smarter and simpler check to know whether should or shouldn't build a converter.

However, the usage of PassthroughConverter brought to the game a subtle feature, the allowance to bind properties of System.Object type, so, it was enough to have at least a single PassthroughConverter to enable this, because, let's say, for PassthroughConverter<HttpPostedFileBase> Matches method:
return property.PropertyType.IsAssignableFrom(typeof (HttpPostedFileBase));
Returned true for properties of HttpPostedFileBase type (as expected), but also for properties of System.Object type (because you can assign an instance of HttpPostedFileBase to a property of System.Object type).

I have introduced a ObjectTypeFamily class which explicitly checks that the property type is System.Object, bringing back the feature to bind request values to System.Object properties.