在nhibernate中有什么东西可以让我获得引用其他类的映射类列表吗?

时间:2011-02-16 03:03:07

标签: nhibernate

nhibernate中是否有一些功能可以遍历所有映射文件,并且可以获取一个引用(多对一)另一个类的类名列表?

这将非常方便,如果我能做到这一点,那么我可以运行一些查询来告诉用户他们为什么不允许删除某些值,而不是抛出看起来很糟糕的外键违规消息......

由于

艾萨克

1 个答案:

答案 0 :(得分:1)

极其简化的方法:

foreach (var classMetadata in sessionFactory.GetAllClassMetadata())
    foreach (propertyType in classMetadata.PropertyTypes)
        if (propertyType.IsEntityType)
            //this is a foreign key

然后你有sessionFactory.GetAllCollectionMetadata()等等。

这应该让你开始。