Just released FluentNHibernate.Search 0.3 Beta which now support Fluent XML-Less Configuration available on CodePlex.
No need to configure NHibernate.Search in web.config or app.config, you can know configure it like FluentNHibernate do for NHibernate.
1: Configuration nhcfg = FluentSearch.Configure()
2: .DefaultAnalyzer().Standard()
3: .DirectoryProvider().FSDirectory()
4: .IndexBase("~/Index")
5: .IndexingStrategy().Event()
6: .MappingClass<SearchMappingImpl>()
7: .BuildConfiguration();
FHNS support both builtin Analyzers and Directory Providers :
Builtin Analyzers :
- StandardAnalyzer
- KeywordAnalyzer
- SimpleAnalyzer
- StopAnalyzer
- WhitespaceAnalyzer
1: // Some Builtin Analyzers
2: FluentSearch.Configure().DefaultAnalyzer().Standard()
3: FluentSearch.Configure().DefaultAnalyzer().Simple()
4: FluentSearch.Configure().DefaultAnalyzer().Whitespace()
5: ...
6:
7: // Custom Analyzers
8: FluentSearch.Configure().DefaultAnalyzer().Custom<MyAnalyzer>()
Builtin Directory Providers :
- FSDirectoryProvider
- RAMDirectoryProvider
1: // Builtin Directory Providers
2: FluentSearch.Configure().DirectoryProvider().FSDirectory()
3: FluentSearch.Configure().DirectoryProvider().RAMDirectory()
4: ...
5:
6: // Custom Directory Providers
7: FluentSearch.Configure().DirectoryProvider().Custom<MyDirectoryProvider>()
Working with FluentNHibernate for NHibernate Configuration ?
You can get FluentNHibernate.Search and FluentNHibernate in touch like this :
1: // FluentNHibernate.Search Configuration
2: var nhcfg = FluentSearch.Configure()
3: .DefaultAnalyzer().Standard()
4: .DirectoryProvider().FSDirectory()
5: .IndexBase("~/Index")
6: .IndexingStrategy().Event()
7: .MappingClass<SearchMappingImpl>()
8: .BuildConfiguration();
9:
10: // FluentNHibernate Configuration
11: var fcfg = Fluently.Configure(nhcfg);
12:
13: var sessionFactory = fcfg.Database(MsSqlConfiguration.MsSql2008.ConnectionString(_settings.ConnectionString)
14: .Cache(p => p.UseQueryCache().ProviderClass<SysCacheProvider>())
15: .Dialect<MsSql2008Dialect>().UseReflectionOptimizer()
16: .AdoNetBatchSize(50)
17: .ProxyFactoryFactory<ProxyFactoryFactory>())
18: .BuildSessionFactory();
19:
Beta 0.3 is available on CodePlex : http://fnhsearch.codeplex.com/
Have fun :)
Views(2943)

