好的,我已经完成了它的工作
首先我创建一个类 StudentLoginData.cs,其中包含根据表中的列的属性。
public class StudentLoginDetails
{
public string student_id { get; set; }
public string fname { get; set; }
public string lname { get; set; }
public string branch { get; set; }
public string gender { get; set; }
public string username { get; set; }
public string verified { get; set; }
}
然后创建一个网络服务
public class StudentLoginDataService : System.Web.Services.WebService
{
[WebMethod]
public void getStudentLoginData()
{
string error;
DataTable dt = DataAccessLayer.showAllStudent(out error);
if (error == null)
{
List<StudentLoginDetails> sld_List = new List<StudentLoginDetails>();
DataTableReader dtr = new DataTableReader(dt);
while (dtr.Read())
{
StudentLoginDetails sld = new StudentLoginDetails();
sld.student_id = dtr["student_id"].ToString();
sld.fname = dtr["fname"].ToString();
sld.lname = dtr["lname"].ToString();
sld.branch = dtr["branch"].ToString();
sld.gender = dtr["gender"].ToString();
sld.username = dtr["username"].ToString();
sld.verified = dtr["verified"].ToString();
sld_List.Add(sld);
}
JavaScriptSerializer jss = new JavaScriptSerializer();
Context.Response.Write(jss.Serialize(sld_List));
}
}
}
然后在我想显示数据的 aspx 页面中,添加了一个 ajax 脚本(在 head 部分的 scriptmanager 上方)
<script type="text/javascript">
function getStudentData() {
$.ajax({
url: 'StudentLoginDataService.asmx/getStudentLoginData',
method: 'post',
dataType: 'json',
success: function (data) {
var table = $("#studentDataTable").DataTable({
data: data,
columns: [
{ 'data': 'student_id' },
{ 'data': 'fname' },
{ 'data': 'lname' },
{ 'data': 'branch' },
{ 'data': 'gender' },
{ 'data': 'username' },
{ 'data': 'verified' },
]
})
}
})
}
</script>