PDA

View Full Version : مبتدی: مشکل لود صفحه و لود dropdown ها



پارسامهر
چهارشنبه 26 اسفند 1394, 09:08 صبح
سلام. امیدوارم حال همگی خوب باشه. دوتا سوال دارم ممنون میشم دوستان جواب بدن..

1.من یه فرم دارم که شامل تعدادی dropdown هست که میخوام با لود شد صفحه اطلاعات رو از دیتا بیس بگیرن اما چون تعداد این dropdown زیاده (7-8) با مشکل لود صفحه مواجه میشم یعنی حدود 20 ثانیه طول میکشه تا صفحه لود بشه . اگه دوستان راه حلی دارن ممنون میشم بگن که این زمان کمتر بشه


protected void Page_Load(object sender, EventArgs e) {
if (!IsPostBack)
{








var getData = context.AirLines.ToList();
dpdAirLinesFlightOperations.DataSource = getData;
dpdAirLinesFlightOperations.DataTextField = "AirLinesName";
dpdAirLinesFlightOperations.DataValueField = "AirLinesID";
dpdAirLinesFlightOperations.DataBind();





var getData1 = context.TypePlanes.ToList();
dpdTypePlanesFlightOperations.DataSource = getData1;
dpdTypePlanesFlightOperations.DataTextField = "TypePlanesName";
dpdTypePlanesFlightOperations.DataValueField = "TypePlanesID";
dpdTypePlanesFlightOperations.DataBind();










var getData2 = context.FlightNumbers.ToList();
dpdFlightNumbersFlightOperations.DataSource = getData2;
dpdFlightNumbersFlightOperations.DataTextField = "FlightNumbersName";
dpdFlightNumbersFlightOperations.DataValueField = "FlightNumbersID";
dpdFlightNumbersFlightOperations.DataBind();






var getData3 = context.AirPorts.ToList();
dpdAirPort1FlightOperations.DataSource = getData3;
dpdAirPort1FlightOperations.DataTextField = "AirPortsName";
dpdAirPort1FlightOperations.DataValueField = "AirPortsID";
dpdAirPort1FlightOperations.DataBind();








var getData4 = context.AirPorts.ToList();
dpdAirPort2FlightOperations.DataSource = getData4;
dpdAirPort2FlightOperations.DataTextField = "AirPortsName";
dpdAirPort2FlightOperations.DataValueField = "AirPortsID";
dpdAirPort2FlightOperations.DataBind();






var getData5 = context.AirPorts.ToList();
dpdAirPort3FlightOperations.DataSource = getData5;
dpdAirPort3FlightOperations.DataTextField = "AirPortsName";
dpdAirPort3FlightOperations.DataValueField = "AirPortsID";
dpdAirPort3FlightOperations.DataBind();





}



}


2. سوال دومم اینه که تو همین صفحه یه ویو دیگه دارم شامل همین تعداد dropdown که باید اطلاعات رو از دیتا بیس بگیره اما نمیدونم کدهای مربوط به فراخوانی اطلاعات dropdown هارو کجا قرار بدم. خود pageload اصلی صفحه قرار میدم کار نمیکنه، تو قسمت رویداد OnClick دکمه ای که مارو از ویو اول به دوم میبره قرار میدم باز کار نمیکنه!!!! این کدهای اپ دیت کردن dropdown های موجود در ویو دوم باید کجا قرار بگیرن که درست کار کنن؟


protected void btnSearchExportPrintFlightOperations_Click(object sender, EventArgs e) {
mvlFlightOperations.ActiveViewIndex = 2;






//اپدیت دراپ دارون ویو سرچ


var getData6 = context.AirLines.ToList();
dpdAirLinesFlightOperations.DataSource = getData6;
dpdAirLinesFlightOperationsvwSearch.DataTextField = "AirLinesName";
dpdAirLinesFlightOperationsvwSearch.DataValueField = "AirLinesID";
dpdAirLinesFlightOperationsvwSearch.DataBind();


var getData7 = context.TypePlanes.ToList();
dpdTypePlanesFlightOperations.DataSource = getData7;
dpdTypePlanesFlightOperationsvwSearch.DataTextFiel d = "TypePlanesName";
dpdTypePlanesFlightOperationsvwSearch.DataValueFie ld = "TypePlanesID";
dpdTypePlanesFlightOperationsvwSearch.DataBind();






var getData8 = context.FlightNumbers.ToList();
dpdFlightNumbersFlightOperations.DataSource = getData8;
dpdFlightNumbersFlightOperationsvwSearch.DataTextF ield = "FlightNumbersName";
dpdFlightNumbersFlightOperationsvwSearch.DataValue Field = "FlightNumbersID";
dpdFlightNumbersFlightOperationsvwSearch.DataBind( );






var getData9 = context.AirPorts.ToList();
dpdAirPort1FlightOperations.DataSource = getData9;
dpdAirPort1FlightOperationsvwSearch.DataTextField = "AirPortsName";
dpdAirPort1FlightOperationsvwSearch.DataValueField = "AirPortsID";
dpdAirPort1FlightOperationsvwSearch.DataBind();




var getData10 = context.AirPorts.ToList();
dpdAirPort2FlightOperations.DataSource = getData10;
dpdAirPort2FlightOperationsvwSearch.DataTextField = "AirPortsName";
dpdAirPort2FlightOperationsvwSearch.DataValueField = "AirPortsID";
dpdAirPort2FlightOperationsvwSearch.DataBind();




var getData11 = context.AirPorts.ToList();
dpdAirPort3FlightOperations.DataSource = getData11;
dpdAirPort3FlightOperationsvwSearch.DataTextField = "AirPortsName";
dpdAirPort3FlightOperationsvwSearch.DataValueField = "AirPortsID";
dpdAirPort3FlightOperationsvwSearch.DataBind();









}

ممنون میشم اگه راهنمایی کنید...

keiv@n
پنج شنبه 27 اسفند 1394, 07:33 صبح
اگر سرعت لود اطلاعات در خواندن از بانک طول میکشه ، یک sp بنویسین و اطلاعات کومبو هارو یکجا سلکت بگیرین، چیزی که من به صورت اجمالی مشاهده کردم تعداد دفعات مراجعه شما به سمت بانک بالاست ، اگر شما واقعا نیاز دارید تا چندین مرتبه از بانک سلکت بگیرین سعی کنید از ajax استفاده کنید ، اگر از linq استفاده می کنید سرعت linq نسبت به استفاده از ado.net پایین تره روش رو عوض کنید

پارسامهر
پنج شنبه 27 اسفند 1394, 19:57 عصر
سلام.ممنون از پاسخ گویی اما من تازه کارم با ajax هم اشنایی ندارم!!

دوستان اگه میتونید با همین روش راهنمایی کنید !! مخصوصا قسمت دوم که چرا dropdown ها فراخوانی نمیشن!!!

پارسامهر
جمعه 06 فروردین 1395, 08:47 صبح
آپـــــــــــــــــــــــ ــــــــــــــــــــــــ ـــــــــــــــــــــ


کسی نیست جواب بده عایا؟

keiv@n
دوشنبه 09 فروردین 1395, 13:20 عصر
باید سورستو ببینم

پارسامهر
شنبه 14 فروردین 1395, 09:06 صبح
باید سورستو ببینم

سورس رو همون اول گذاشتم...

keiv@n
شنبه 14 فروردین 1395, 14:59 عصر
بنظرم میاد کدهاتون درست باشه و مشکل لود نشدن دراپ داون ها از جای دیگه ای باشه
باید در حین دیباگ کدهاتون رو بررسی کرد