ValueInjecter игнорировать случаи при сопоставлении свойств
Например, я хочу сопоставить свойство Foo.ID с Bar.Id, возможно ли это?
1 ответ
Решение
Вам нужно создать свой собственный ConventionInjection
где вы сравниваете имена свойств без учета регистра:
public class IgnoreCaseInjection : ConventionInjection
{
protected override bool Match(ConventionInfo c)
{
return String.Compare(c.SourceProp.Name, c.TargetProp.Name,
StringComparison.OrdinalIgnoreCase) == 0;
}
}
И вам нужно использовать его с
var foo = new Foo() { ID = 1};
var bar = new Bar();
bar.InjectFrom<IgnoreCaseInjection>(foo);