【问题标题】:Fluent NHibernate, questions about code designFluent NHibernate,关于代码设计的问题
【发布时间】:2014-07-28 16:51:57
【问题描述】:

您好,我是 Fluent NHibernate 的新手。

让我们想象一下,一个有很多类

A类
B类
C类
...

创建架构后,我想获取已创建表的列表。

例如:

打开表格 -> 有一个表格的名称,当我们点击每个表格时,我们会从该表格中获取记录。

我怎样才能做到这一点?有没有更便宜的方法? 有没有可能不经过反思就做出来? (解析所有类,并获取其名称)

【问题讨论】:

    标签: c# winforms nhibernate fluent-nhibernate


    【解决方案1】:

    NHiberante 内置支持获取所有映射实体及其表的名称。代码可能如下所示:

    ISessionFactory factory = ... // get your NH ISessionFactory;
    
    // all mapped entities as dictionary
    var allClassMetadata = factory.GetAllClassMetadata();
    
    foreach (var meta in allClassMetadata)
    {
        var persister = meta.Value as NHibernate.Persister.Entity.AbstractEntityPersister;
        var tableName = persister.TableName;
        var entityName = persister.EntityType.Name;
        ... 
        // TODO what needed with this info
    }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2010-11-17
      • 2010-10-29
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多