Nhibernate filtering by user defined function output

前端 未结 2 1170
离开以前
离开以前 2021-01-01 05:08

I\'m reasonably new to NHibernate and everything has been going pretty well so far but I\'ve come across a problem I\'m not exactly sure of how to go about solving. Basicall

2条回答
  •  长发绾君心
    2021-01-01 05:36

    Creating custom dialect extensions is rather easy:

    public class CustomFunctionsMsSql2005Dialect : MsSql2005Dialect 
    { 
       public CustomFunctionsMsSql2005Dialect() 
       { 
          RegisterFunction("calculatedistance",
                           new SQLFunctionTemplate(NHibernateUtil.Int32,
                                                   "CalculateDistance(?1, ?2, ?3, ?4)"));
       }
    }
    

    Register it, like so:

    
      CustomFunctionsMsSql2005Dialect, MyAssembly
    
    

    Now you can use it like any other HQL function in queries like those created with session.CreateQuery().

提交回复
热议问题