Есть ли в nhibernate что-нибудь, что позволяет мне получить список сопоставленных классов, которые ссылаются на какой-то другой класс? - PullRequest
0 голосов
/ 16 февраля 2011

Есть ли какая-то особенность в nhibernate, которая проходит через все файлы сопоставления и может дать мне список имен классов, которые ссылаются (много на один) на другой класс?

Было бы очень удобно, если бы я мог это сделать, то я мог бы выполнить несколько запросов, чтобы точно сказать пользователю, почему ему не разрешено удалять определенные значения, вместо того, чтобы выдавать грубое сообщение о нарушении внешнего ключа ...

Спасибо

Исаак

1 Ответ

1 голос
/ 16 февраля 2011

Чрезвычайно упрощенный подход:

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

Тогда у вас есть sessionFactory.GetAllCollectionMetadata() и т. Д.

Это должно помочь вам начать.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...