2012-07-12 35 views
0

任何人都试图启用使用Fluent NHibernate与SQLite配对的批处理支持?我试过如何在Fluent NHibernate + SQLite中使用批处理

Fluently.Configure() 
.Database(SQLiteConfiguration.Standard 
.UsingFile(CreateOrGetDataFile()).AdoNetBatchSize(128)) 
.Mappings( 
m => m.FluentMappings.AddFromAssembly(Assembly.Load("Sauron.Core")) 
.Conventions.Add(PrimaryKey.Name.Is(p => "Id"), ForeignKey.EndsWith("Id"))) 
.BuildSessionFactory(); 

但没有工作。

我也尝试在ISession和IStatelessSession上设置批处理大小,但我收到异常说批处理被禁用。

回答

0

SQLite尚不支持批处理。它只适用于SQLServer和Oracle。

尽管如此,您并不一定要等待。您可以实施IBatcherFactoryIBatcher

0

您使用的是什么id生成策略?服务器生成的(身份,序列)不允许批处理。

+0

我正在使用分配的策略......换句话说,我是用手指定ID – Davita 2012-07-12 21:52:03