我遇到了 NHibernate 3.3 和 Firebird 2.5.1 的性能问题。我使用 ASP.NET MVC 和本地(!)Firebird 数据库创建了一个非常简单的示例。但是下面的代码执行大约需要 1 秒?!?
var startTickCountWrite = Environment.TickCount;
IRepository<Project> repository = facade.ProjectRepository(null);
for (int i = 1; i <= 250; ++i)
{
var myProject = new Project { ProjectId = i };
repository.Insert(myProject);
}
repository.Commit();
var endTickCountWrite = Environment.TickCount;
如果我将 commit() 放在 for 循环中,大约需要 5 秒!
Repository 和外观背后并没有什么特别之处。我只是将项目转发给 ISession.Insert。
Project 只有 ID 和 ProjectID 作为属性。
谁能告诉我出了什么问题?
谢谢, 安德烈亚斯