Как сделать один запрос на получение разных наборов данных? - PullRequest
0 голосов
/ 28 мая 2019

У меня есть 2 действия, которые возвращают данные JSON.

Первое действие вызывается с помощью запроса ajax для заполнения первого набора элементов управления, который остается общим для всего проекта, но должен заполняться при каждом щелчке меню, но нижняя часть страницы является переменной и должназаполняться разными данными.

Теперь я хочу отправить один запрос и выполнить 2 действия в одном запросе на получение.

public JSONRESULT GetCommonData()
{
    return JSONDATA;
}

public JSONRESULT GetVariableData()
{
    return JSONDATA;
}

Теперь один ajax-вызов должен выполнять это без отправки запроса.для 2-го набора данных.

1 Ответ

1 голос
/ 28 мая 2019

Вы можете создать модель представления, и вы можете вернуть оба 2 данных в одном действии.В этом действии вы можете получать переменные по своему усмотрению.

public class JsonResult
{
    public object CommonData { get; set; }
    public object VariableData { get; set; }
}

Если у вас будут некоторые реляционные данные, вы можете получить ошибку циклической ссылки.Вы можете использовать это так:

var jsonResult = JsonConvert.SerializeObject(yourmodel, Formatting.Indented,
    new JsonSerializerSettings
    {
        ReferenceLoopHandling = ReferenceLoopHandling.Ignore
    });

return Json(jsonResult, JsonRequestBehavior.AllowGet);
...