-1
我有一个DatatridView和一个BindingSource,其中有一个来自LiteDB Source的〜5000 DataItems。这些数据项包含一个预览图片。dotnet C#DataGridView数据绑定性能
我的问题和疑问是:我能否以某种方式提高Databind的性能?或者我使用它错了?
这里是我的数据对象
public class VEFile
{
public VEFile()
{
Tags = new List<VETag>();
}
public static DateTime LastPlaybacked { get; set; }
public string Path { get; set; }
public string FileName { get; set; }
public string LastAccessed { get; set; }
public byte[] Thumbnail { get; set; }
public List<VETag> Tags { get; set; }
[System.ComponentModel.Browsable(false)]
public string Id { get; set; }
public DateTime LastModified { get; set; }
public long FileSize { get; set; }
[BsonIndex]
public int ViewCount { get; set; }
}
我的数据绑定代码:
using (var db = new MyLiteDatabase(connectionString))
{
var filesCollection = db.GetCollection<VEFile>("files");
var results = filesCollection.Include(x => x.Tags).FindAll().OrderByDescending(x => x.LastModified);
originalBindingList = new BindingList<VEFile>(new List<VEFile>(results));
bindingSource1.DataSource = originalBindingList.OrderByDescending(x => x.LastModified);
}
最后一行
bindingSource1.DataSource = originalBindingList.OrderByDescending(x => x.LastModified);
几秒钟加上内存使用坡道挂断了〜2GB并在此之后立即下降。