Я нашел, что это работает, чтобы получить имя таблицы, в которой сохраняются сущности.
- Вы должны иметь экземпляр
NHibernate.Cfg.Configuration
- Вы запрашиваете экземпляр
NHibernate.Mapping.Table
для данного постоянного типа.
- Свойство
Name
экземпляра Table
соответствует имени таблицы, в которой сохраняются сущности.
См. Код ниже.
NHibernate.Cfg.Configuration config = new Configuration();
/*
The initialisation here like config.AddAssembly(... and so forth
*/
NHibernate.Mapping.Table table = config.GetClassMapping(typeof(T)).RootTable;
String NameOfTableOfInterest = table.Name;
Это может быть заключено в такую функцию, как
public static String GetTableName<T>(NHibernate.Cfg.Configuration config)
{
return config.GetClassMapping(typeof(T)).RootTable.Name;
}
ПРИМЕЧАНИЕ: Как ни странно, свойства Catalog
и Schema of the
NHibernate.Mapping.Table` не имеют значения. По крайней мере, не в моем случае.