注册IsLike扩展方法Hql-Generators 我们继承默认NHibernate内置支持的NHibernate.Linq查询注册类这样可以把我们自定义的Hql-Generators附加进去。//Code Snippets Copyright http://lyj.cnblogs.com/ public class MyLinqToHqlGeneratorsRegistry: DefaultLinqToHqlGeneratorsRegistry { public MyLinqToHqlGeneratorsRegistry() { RegisterGenerator(ReflectionHelper.GetMethodDefinition( () MyLinqExtensions.IsLike(null, null)),new IsLikeGenerator()); } }4.配置自定义Linq provider扩展使用IsLike扩展方法去查询DB数据我们需要配置我们自定义的LinqToHQLGeneratorsRegistry如果使用配置文件配置则需要使用linqtohql.generatorsregistry如果使用Loquacious-configuration就是这样//Code Snippets Copyright http://lyj.cnblogs.com/ configuration.LinqToHqlGeneratorsRegistryMyLinqToHqlGeneratorsRegistry();5.使用IsLike扩展方法//Code Snippets Copyright http://lyj.cnblogs.com/ var users session.QueryUser().Where(o o.Name.IsLike(%永京%)).ToList();6.执行结果结语