【发布时间】:2020-05-07 09:57:15
【问题描述】:
我必须加入两个表并以 json 格式传递它的值。 我已经完成了如下操作
public DataTable LoadDetails()
{
SqlConnection con = new SqlConnection(conn);
string sql = "SELECT table_header.userid,table_header.name,table_details.Question_no,table_details.Question from table_header INNER JOIN table_details ON table_header.userid =table_details.useridWHERE table_header.active=@active";
SqlCommand cmd = new SqlCommand(sql, con);
con.Open();
try
{
cmd.CommandType = CommandType.Text;
cmd.Parameters.AddWithValue("@active", 1);
SqlDataReader dr = cmd.ExecuteReader();
DataTable dt = null;
if (dr.HasRows)
{
dt = new DataTable();
dt.Load(dr);
}
else
{
dt = new DataTable();
dt.Columns.Add("Status", typeof(string));
dt.Rows.Add("fail");
}
return dt;
}
catch (Exception show_error)
{
throw show_error;
}
finally
{
cmd.Dispose();
con.Close();
con.Dispose();
}
}
在 web api 控制器中
[Route("LoadDetails"), HttpGet]
public HttpResponseMessage LoadDetails()
{
try
{
var Response = objLogic.LoadDetails();
var Result = this.Request.CreateResponse(HttpStatusCode.OK, Response, new JsonMediaTypeFormatter());
return Result;
}
catch (Exception ex)
{
HttpError Error = new HttpError(ex.Message) { { "IsSuccess", false } };
return this.Request.CreateErrorResponse(HttpStatusCode.OK, Error);
}
}
现在我得到了如下回复,
[{"userid":42,"name":"Saran","Question_no":1,"Question":"xxxx?"},{"userid":42,"name":"Saran","Question_no":2,"Question":"yyyyy?"},{"userid":42,"name":"Saran","Question_no":3,"Question":"zzzz?"}]
由于这些用户标识和名称对所有行都是通用的,我怎样才能使其在 json 字符串中通用?
【问题讨论】:
标签: c# asp.net json asp.net-web-api