Javascript 如何在asp.net中将数据异步绑定到Listbox?
目前我有大约2000个建筑数据正在加载到Javascript 如何在asp.net中将数据异步绑定到Listbox?,javascript,jquery,asp.net,performance,listbox,Javascript,Jquery,Asp.net,Performance,Listbox,目前我有大约2000个建筑数据正在加载到列表框中,由于页面加载缓慢,我只想加载,即在页面加载上加载10个建筑,这样页面可以加载得更快,其他UI控件可以加载得更快 尝试: 为此,我在session中添加了grid的结果,因此当用户单击grid中的特定链接时,它不会点击SP/database,也不会从session中获取结果,但没有多大帮助。page 装载仍然很慢 那么,有没有其他方法可以更快地加载列表框? 添加代码 代码.aspx <asp:ListBox ID="drpBuilding"
列表框中,由于页面加载缓慢,我只想加载,即在页面加载上加载10个建筑,这样页面可以加载得更快,其他UI
控件可以加载得更快
尝试:
为此,我在session
中添加了grid的结果,因此当用户单击grid
中的特定链接时,它不会点击SP/database
,也不会从session
中获取结果,但没有多大帮助。page
装载仍然很慢
那么,有没有其他方法可以更快地加载列表框
?
添加代码
代码.aspx
<asp:ListBox ID="drpBuilding" runat="server" CssClass="formcontrol"SelectionMode="Multiple"></asp:ListBox>
c#代码
受保护的无效页面\u加载(对象发送方,System.EventArgs e)
{
如果(!Page.IsPostBack){
this.drpBuilding.Items.Clear();
列表=默认值(列表);
if(会话[“buildinglist”]==null){
lstBuildings=this.mBuildingBLL.Get_ContactSiteBuildingsListLoad(p_ContactID:UserWrapper.GetCurrentUser().ContactID,p_ShowInactive:false);//SP方法
会话[“buildinglist”]=LST建筑物;
}否则{
lstBuildings=Session[“buildinglist”];//未命中从SP获取值的SP/DB
}
如果(lstBuildings.Count>0){
this.drpBuilding.Enabled=true;
this.drpBuilding.DataSource=lstBuildings;
}否则{
this.drpBuilding.Enabled=false;
}
this.drpBuilding.DataTextField=“Building”;
this.drpBuilding.DataValueField=“BuildingID”;
this.drpBuilding.DataBind();
}
}
你能澄清两件事吗?1) Listbox在开始时加载了10条记录,对吗?2) 当Listbox拥有10条记录时,你的网格中有什么?1.是的2.网格将只在搜索按钮单击时加载任何内容显示你的代码,我不完全理解。完成添加现有代码@MAdeelKhalidgot it now@Madeelkhalid你能澄清两件事吗?1) Listbox在开始时加载了10条记录,对吗?2) 当Listbox拥有10条记录时,你的网格中有什么?1.是的2.网格将只在搜索按钮单击时加载任何内容显示你的代码,我不完全理解。完成添加现有代码@MAdeelKhalidgot it now@马迪尔哈利德
protected void Page_Load(object sender, System.EventArgs e)
{
if (!Page.IsPostBack) {
this.drpBuilding.Items.Clear();
List<PResponse.BLL.Building> lstBuildings = default(List<PResponse.BLL.Building>);
if (Session["buildinglist"] == null) {
lstBuildings = this.mBuildingBLL.Get_ContactSiteBuildingsListLoad(p_ContactID: UserWrapper.GetCurrentUser().ContactID, p_ShowInactive: false);//SP method
Session["buildinglist"] = lstBuildings;
} else {
lstBuildings = Session["buildinglist"]; //not hitting the SP/DB getting value from SP
}
if (lstBuildings.Count > 0) {
this.drpBuilding.Enabled = true;
this.drpBuilding.DataSource = lstBuildings;
} else {
this.drpBuilding.Enabled = false;
}
this.drpBuilding.DataTextField = "Building";
this.drpBuilding.DataValueField = "BuildingID";
this.drpBuilding.DataBind();
}
}