如何从数据库映射类中检索表名 C# fluent nhibernate

问题描述 投票:0回答:1

我有 itemMap 类

 public class ItemMap : ClassMap<Item>
{
     public ItemMap()
    {
        Table("item");
        Id(x => x.Id).GeneratedBy.Identity().Column("id");
        Map(x => x.Inserted).Column("inserted").Not.Nullable()
    }
 }

使用C#反射从代码中获取表名 "item "有哪些选项?

c# sql fluent-nhibernate system.reflection
1个回答
0
投票

这里有一个扩展方法,用于获取映射类的表名。

    public static string GetTableNameFromClass<T>(this ISession session)
    {
        var abstractEntityPersister = session.SessionFactory.GetClassMetadata(typeof(T)) as AbstractEntityPersister;

        return abstractEntityPersister?.TableName.Replace("[", "").Replace("]", "");
    }
© www.soinside.com 2019 - 2024. All rights reserved.