Предыдущие примеры будут работать, но они наивны. Ничего хорошего в коде не приведёт к циклу массива, который не очень надежен.
Давайте представим, что вы возвращаете пары ключ / значение в своем коде позади метода, и вы хотите иметь возможность выбирать эти данные для использования по своему усмотрению. Вы начинаете с этого.
[WebMethod]
public static Dictionary<string, string> EditPromo(int promoId)
{
using (var db = new DataContext())
{
var q = db.Promos.Where(x => x.promoID == promoId).Select(x => x).Single();
return new Dictionary<string, string>()
{
{"code", q.code},
{"label", q.label},
{"expiredate", string.Format("{0:M/d/yyyy}", q.expireDate)}
};
}
}
Теперь мы можем получить к нему доступ через jQuery Ajax, например:
$.ajax({
url: "/Manager/mPromo/Promo.aspx/EditPromo",
context: $("#editPromo"),
data: "{promoId:'" + promoid + "'}",
success: function (msg)
{
var resp = msg.d;
$("h1:first", this).text("Edit " + resp.code);
$("input#txtDate", this).val(resp.expiredate);
}
});
Обратите внимание, как я создал переменную для хранения msg.d, называемую респ. Затем я могу использовать resp.ReturnedDictionaryKey. Выше я использовал используемый код и истек срок действия. Я могу использовать их, как мне угодно.