다음 코드를 사용하려고하지만 응용 프로그램 성능이 좋지 않습니다.데이터베이스에서 이미지 및 텍스트를 가져 오는 동안 속도를 높이려면 어떻게해야합니까?
"dt_Images.ToList()"에 2000 개의 이미지 목록이 있습니다. CS에서
:
foreach (var dr in dt_Images.ToList())
{
BTN = new Button();
BTN.Name = dr.Name.ToString();
BTN.Image = dr.Image;
BTN.Text = dr.text.ToString();
flowLayoutPanel1.Controls.Add(BTN);
BTN.Click += new EventHandler(this.pic_Click);
}
나는 또한 목록보기와 결합하지만 원하는 속도를 얻지 못하고하려고했다.
flowLayoutPanel로 바인딩하는 동안 속도를 높이려면 어떻게해야합니까?
컨트롤에서 직접 DataSource를 바인딩 할 수 있습니까? 그렇다면 어떤 컨트롤을 사용 했습니까?
은 일반적으로 당신은 당신이 보여 사진을 다운로드해야하고 주변의 몇 날
이미지는 데이터베이스에 BLOB 데이터로 저장되며 중량이 큽니다. 이 정보를 프리 페치하여이를 메모리에 보유 할 수 있습니까? 2000은 귀하의 이미지가 합리적으로 작은 (KB 단위가 아닌, MB로 제공) 큰 덩어리가 아닙니다. – questzen
내 모든 이미지는 KB이지만이 양식을로드하는 데 2 분이 걸립니다. @questzen – Tulsi
데이터베이스 가져 오기는 시간이 많이 걸립니다. 로컬 메모리에 이미지를 캐싱하여 처리 시간을 줄일 수 있습니다. 응용 프로그램에서 허용하는 경우이 2000 개체를 손쉽게 초기화하십시오. – questzen