There are load of examples in NHibernate.Tests :wink:
Here is one (from NHibernate.Test\FooBarTest.cs):
Code:
IList list = s.CreateCriteria( typeof( Foo ) )
.Add( Expression.Expression.Eq( "Integer", f.Integer ) )
.Add( Expression.Expression.EqProperty( "Integer", "Integer" ) )
.Add( Expression.Expression.Like( "String", f.String ) )
.Add( Expression.Expression.In( "Boolean", new bool[ ] {f.Boolean, f.Boolean} ) )
.SetFetchMode( "TheFoo", FetchMode.Eager )
.SetFetchMode( "Baz", FetchMode.Lazy )
.List();