nhibernate中是否有一些功能可以遍历所有映射文件,并且可以获取一个引用(多对一)另一个类的类名列表?
这将非常方便,如果我能做到这一点,那么我可以运行一些查询来告诉用户他们为什么不允许删除某些值,而不是抛出看起来很糟糕的外键违规消息......
由于
艾萨克
答案 0 :(得分:1)
极其简化的方法:
foreach (var classMetadata in sessionFactory.GetAllClassMetadata())
foreach (propertyType in classMetadata.PropertyTypes)
if (propertyType.IsEntityType)
//this is a foreign key
然后你有sessionFactory.GetAllCollectionMetadata()
等等。
这应该让你开始。