【发布时间】:2017-05-12 14:04:33
【问题描述】:
我正在创建一个网络应用程序,其中我有6000 员工,我想在我的网络应用程序的一个表上显示所有员工,
记录的数量非常多,这就是为什么要花太多时间向我展示数据
这是我的网络服务
[WebMethod]
[ScriptMethod(UseHttpGet = true)]
public void showrecd()
{
List<object> employeedata = new List<object>();
SqlCommand cmd = new SqlCommand("select * from dbo.employeedetails order by id desc",con);
con.Open();
SqlDataReader dr = cmd.ExecuteReader();
while(dr.Read())
{
employeedata.Add(new{
id=dr["id"].ToString(),
empname=dr["empname"].ToString(),
address = dr["address"].ToString(),
jobdescrib =dr["jobdescrib"].ToString(),
brandname=dr["brandname"].ToString(),
location=dr["location"].ToString()
});
}
var json = js.Serialize(employeedata);
Context.Response.Write("{" + '"' + "info" + '"' + ":" + json + "}");
con.Close();
}
我从这里获取数据,
现在我想让工作更轻松,我已经使用了一个文本框
<input type="text" ng-model="records" ng-change="showrecordsasperthistextbox()"/>
现在如果用户在上面的文本框中输入(500),则 web 服务只需要获取 500 条记录 如果用户输入(1),webservice 应该只获取一条记录,
我需要做什么以及如何做到这一点???
【问题讨论】:
-
函数
showrecordsasperthistextbox()的代码是什么? -
使用数据表,它将提供所有特征搜索/过滤/分页等。
-
传递用户输入值以选择查询作为参数。并将其附加到
TOP子句中。select TOP (@P1) * from dbo.employeedetails order by id desc -
如果用户想要前 50 个,然后是下一个 50,该怎么办?那不是下一步吗?你不是基本要求分页机制吗?
-
不,我不想同时获取所有数据,我只想获取少量数据
标签: angularjs sql-server web-services asp.net-mvc-5 fetch