gpt4 book ai didi

c# - 如何使用代码 "Conventions"映射忽略属性映射

转载 作者:太空狗 更新时间:2023-10-30 01:09:04 25 4
gpt4 key购买 nike

有什么方法可以避免使用代码约定映射使用 NHibernate 3.2 映射属性?默认情况下,所有属性都已映射。

最佳答案

2) 作为 IsPersistentProperty 默认实现的复制和粘贴的替代方法,它可以通过反射重用:

var mapper = new ConventionModelMapper();
var field = mapper.ModelInspector.GetType()
.GetField( "isPersistentProperty", BindingFlags.NonPublic | BindingFlags.Instance );

var ispp = (Func<MemberInfo, bool, bool>)field.GetValue( mapper.ModelInspector );
mapper.IsPersistentProperty( ( mi, b ) => ispp( mi, b )
&& ( /*any conditions here*/ mi.Name != "SomeFiledName" ) );

条件可以移动到单独的方法或类中。可以在其之上完成基于表达式的强类型包装器。

关于c# - 如何使用代码 "Conventions"映射忽略属性映射,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7830096/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com