Получите NHibernate QueryOver SQL и проверьте параметр без выполнения - PullRequest
0 голосов
/ 26 апреля 2019

Контекст

Я использую следующий метод для получения сгенерированного NHibernate SQL.

    public static string GetGeneratedSql(IQueryOver query)
    {
        var criteria = (CriteriaImpl) query.UnderlyingCriteria;
        var session = (SessionImpl) criteria.Session;
        var factory = (SessionFactoryImpl) session.SessionFactory;
        var implementors = factory.GetImplementors(criteria.EntityOrClassName);
        var loader = new CriteriaLoader((IOuterJoinLoadable)factory.GetEntityPersister(implementors[0]), factory, criteria, implementors[0], session.EnabledFilters);

        return loader.SqlString.ToString();
    }

Я понимаю, что NHibernate не будет жестко закодировать параметры в SQL, поэтому я получил следующий вывод:

... где myalias.Id =?...

Вопрос

Я хотел бы проверить, добавлено ли соответствующее значение параметра.Как я могу сделать это, не выполняя фактическое утверждение?

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