ValueInjecter在映射属性时忽略大小写(ValueInjecter to ignore cases when mapping properties)

编程入门 行业动态 更新时间:2024-10-23 23:32:57
ValueInjecter在映射属性时忽略大小写(ValueInjecter to ignore cases when mapping properties)

例如,我想将属性Foo.ID映射到Bar.Id,是否可能?

For example, I want to map property Foo.ID to Bar.Id, is it possible?

最满意答案

您需要创建自己的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);

You need to create your own ConventionInjection where you compare the property names case insensitivly:

public class IgnoreCaseInjection : ConventionInjection
{
     protected override bool Match(ConventionInfo c)
     {
         return String.Compare(c.SourceProp.Name, c.TargetProp.Name, 
                               StringComparison.OrdinalIgnoreCase) == 0;
     }
}
 

And you need to use it with

var foo = new Foo() { ID = 1};
var bar = new Bar();
bar.InjectFrom<IgnoreCaseInjection>(foo);

                    
                     
          

更多推荐

本文发布于:2023-07-22 12:18:00,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/34/1219952.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:大小写   属性   ValueInjecter   ignore   properties

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!