-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並在此之後立即下降。