0
我想解析一个流利的NHibernate映射文件,这样我就可以得到在那里指定的表名和列名。流利的NHibernate反射映射
加载程序集并将类型反映为ClassMap不是问题,但该类仅获取设置表和列名称的方法 - 无法再次获取名称。
任何想法?
我想解析一个流利的NHibernate映射文件,这样我就可以得到在那里指定的表名和列名。流利的NHibernate反射映射
加载程序集并将类型反映为ClassMap不是问题,但该类仅获取设置表和列名称的方法 - 无法再次获取名称。
任何想法?
使用Reflector,它看起来像表方法有此签名:
public void Table(string tableName)
{
this.attributes.Set<string>(x => x.TableName, tableName);
}
列将困难得多,因为它使属性,引用和集合分开。例如。
protected virtual PropertyPart Map(PropertyInfo property, string columnName)
{
PropertyPart propertyMap = new PropertyPart(property, typeof(T));
if (!string.IsNullOrEmpty(columnName))
{
propertyMap.Column(columnName);
}
this.properties.Add(propertyMap);
return propertyMap;
}
在理论上虽然能够得到私有字段属性,属性和引用通过反射和获取信息的方式。
原来我并不需要这么多,因为我认为。显然,nHibernate中的CreateQuery方法使用对象名称解析字符串,并将类字段名称映射到列名称 - 仍然学习nhibernate:\我最终编写了自己的Update方法,该方法将字段的lambda表达式列表更新和条件子句的lambda表达式的新值和列表,而不是使用nHibernate为每个更新加载每个实体。 – johnnyboy 2011-02-02 04:10:49