PDA

View Full Version : سوال: شخصی کردن پاسخ متد های webapi



rexi1r
پنج شنبه 20 خرداد 1395, 13:03 عصر
سلام دوستان من یه متد webapi دارم که نتیجه یک select رو به صورت IQueryable برمیگردونه ولی همینطور که میدونید این شکل از جواب به صورت JsonArray.ولی چیزی که من میخوام اینه که نتیجه این select رد قالب همون json باشه ولی به صورت jsonobject باشه که چندتا فیلد دیگه داشته باشه مثلا تاریخ و یا یه پیام و بعد یه نود هم داشته باشه به اسم data و اون به صورت آرایه باشه و نتیجه select توی اون data باشه.
// GET: api/UsersAPI
public IQueryable<User> GetUsers()
{

return db.Users;
}
که نتیجه کد بالا این شکلیه:که به صورت JsonArray هستش
[
{
"Id": 1,
"tg": "1",
"regdate": "1395/03/18",
"token": "none",
"coins": 50
},
{
"Id": 2,
"tg": "2",
"regdate": "1395/03/10",
"token": "none",
"coins": 50
}
]

و اما چیزی که من میخوام:که به صورت JsonObject هست و یه نودش به صورت Array هست
{
"date": "1395",
"name": "ali",
"users": [
{
"Id": 1,
"tg": "1",
"regdate": "1395/03/18",
"token": "none",
"coins": 50
},
{
"Id": 2,
"tg": "2",
"regdate": "1395/03/10",
"token": "none",
"coins": 50
}
]
}

rexi1r
پنج شنبه 20 خرداد 1395, 14:18 عصر
جواب را یافتم اما هرکدام از دوستان که میتونن راهنمایی کامل تری انجام بدن ممنون میشم.نکته ای حرفی سخنی چیزی......
جواب:
var json =
new
{
id = "",
title = "title " ,
data = db.Users
};


HttpResponseMessage response = Request.CreateResponse(HttpStatusCode.OK, json);

adameh_bahal
پنج شنبه 20 خرداد 1395, 15:46 عصر
return Json(new {db.Users});