我有一个带有表格的aspx文件。
<table class="table .table-condensed table-bordered table-hover">
<thead>
<tr>
<th>Row</th>
<th>Full Name</th>
<th>Admin ID</th>
<th>Password</th>
<th>E-mail</th>
<th>Contact No</th>
<th> </th>
</tr>
</thead>
</table>
<script>
jQuery(window).load(function () {
getAdministrator();
});
function getAdministrator() {
$('#panelContainer').removeClass('panel-danger');
$.ajax({
type: "POST",
url: "ADMAdminManagement.aspx/GetAllAdministrator",
data: "{}",
contentType: "application/json; charset=utf-8",
dataType: "json",
beforeSend: function () {...
};
</script>
我有一个AdministratorManager.cs文件,其中包含以下代码,以便从MySql获取数据并创建一个列表。我试图使用这些信息使用AJAX Post方法填充我的表格。
public List<Administrator> getAllAdministrator()
{
SqlCommand cmd = new SqlCommand();
SqlConnection cn = new SqlConnection();
SqlDataAdapter da = new SqlDataAdapter();
DataSet ds = new DataSet();
List<Administrator> administratorList = new List<Administrator>();
da.SelectCommand = cmd;
cn.ConnectionString =
ConfigurationManager.ConnectionStrings["WebaConnectionString"].ToString();
cmd.Connection = cn;
cmd.CommandText = "SELECT SystemUserId,UserId,Password,FullName,Email,ContactNo,DateOfBirth FROM SystemUser";
cn.Open();
da.Fill(ds, "AdministratorData");
cn.Close();
foreach (DataRow dr in ds.Tables["AdministratorData"].Rows)
{
Administrator administrator = new Administrator();
administrator.SystemUserId = Int32.Parse(dr["SystemUserId"].ToString());
administrator.UserId = dr["UserId"].ToString();
administrator.Password = dr["Password"].ToString();
administrator.FullName = dr["FullName"].ToString();
administrator.Email = dr["Email"].ToString();
administrator.ContactNo = dr["ContactNo"].ToString();
administrator.DateOfBirth = DateTime.Parse(dr["DateOfBirth"].ToString());
administratorList.Add(administrator);
}
return administratorList;
}
我设法获取在我的cs文件中生成的列表,并将我的webform文件后面的代码转发到我的代码。我想知道如何返回这些数据并将其发送到我的webform。从我听说过我必须将其转换为JSON格式,但我似乎无法。
[WebMethod]
public static object GetAllAdministrator()
{
AdministratorManager administratorManager = new AdministratorManager();
List<Administrator> adminList = administratorManager.getAllAdministrator();
}
答案 0 :(得分:0)
您可以使用JavascriptSerializer
类using System.Web.Script.Serialization
,它将序列化和反序列化方法转换为json,反之亦然。
在你的情况下,你必须这样做:
JavaScriptSerializer obj= new JavaScriptSerializer();
string output = obj.Serialize(adminList);
输出是一个json字符串,您的webmethod将其作为响应收到。