В нашем проекте мы настроили наш MsSql2005Dialect.
public class MsSql2005Dialect : NHibernate.Dialect.MsSql2005Dialect
{
public MsSql2005Dialect()
{
RegisterFunction("getDate",
new NoArgSQLFunction("convert(datetime, floor(convert(float, getdate())))", NHibernateUtil.DateTime, false));
RegisterFunction("getDateTime",
new NoArgSQLFunction("getdate", NHibernateUtil.DateTime, true));
}
}
и зарегистрировали этот пользовательский диалект в nhibernatehelper: Dialect dialect = Dialect.GetDialect (configuration.Properties);
зарегистрироваться вhibernate.cfg.xml: SAGP.DataAccess.Dialects.MsSql2005Dialect, SAGP.DataAccess, Version = 1.0.0.0, Culture = нейтральный, PublicKeyToken = null
и используйте его в hql как: "select getDateTime ()from RandomTableFromYourSystem ";