Как определить, отображается ли свойство в классе AutoMapper? - PullRequest
0 голосов
/ 23 января 2012

Я работаю над проектом (полностью открытым исходным кодом), который обеспечивает тесную интеграцию с AutoMapper.Я хотел бы знать: во время выполнения я хочу знать, какие сопоставления зарегистрированы AM, не только между классами, но мне нужно знать, отображается ли конкретное свойство в определенном классе в то время, если нет, мне нужночтобы отобразить его, если это так, я игнорирую, но так или иначе мне нужно сохранить имя или полный путь этого свойства в виде строки.

Например:

Foo foo = new Foo();

1- foo.bar (необходимо сохранить свойство "bar" для класса "Foo") 2 - foo.Bar.Foo.Bar.Name (необходимо хранить полный путь "Bar.Foo.Bar.Name" для класса "Foo")

На самом деле я могу это сделать, но есть некоторые особенности, которые могут уйти от моей реализации.

Класс, содержащий метод, который я сделал до сих пор, находится здесь в репозитории в BitBucket:https://bitbucket.org/Lunadie/telerikmvcgridcustombindinghelper/src/5e3b8301719d/TelerikMvcGridCustomBindingHelper/Mapper/GridModelMapperBase.cs

В частности, методы "CanPassToAutoMapper" и "GetPropertyMap" кажутся немного хрупкими и подвержены ошибкам, как вы думаете?

...