我有以下代码块,非常简单,但运行速度非常慢。
Users = new Dictionary<string, MongoUser>();
MongoDatabase ace = GetDatabase();
var users = ace.GetCollection("user").FindAll();
foreach (BsonDocument user in users) // This line takes 14 seconds!
{
TimeSpan span = DateTime.Now - dt;
span.ToString();
MongoUser USER = new MongoUser(user);
Users.Add(USER.MacAddress, USER);
}
此代码块大约需要18秒才能运行。我已对每一行进行了分析,并确定该行(上面标记的)几乎占用了所有时间(14/18秒,~80%)。就数据库而言,我查询的集合有740个非常简单的文档(即5个字段,没有嵌套)。磁盘总大小:0.2MB(因此与网络无关)。
总结一下:
有什么想法吗?我真的认为MongoDB和C#驱动程序比这更好,我确信这是我做错了 - 谢谢!