2016-08-02 2 views
0
Public JsonResult GetDetails() 
{ 
    List<Cust> Customers = new List<Cust>(); 
    Customers = GetCustomerDetails(); 
    var name = Customers.Select(e => new{e.custname}).Distinct().ToList(); 
    var dept = Customers.Select(e => new{e.deptname}).Distinct().ToList(); 
    var response = new{CustomerNames = name, CustomerDepartments = dept}; 
    return Json(response, JsonRequestBehaviour.AllowGet(); 
} 

У меня есть этот метод выше, возвращающий объект json, теперь этот метод должен вернуть подмножество этого отклика вместе с его возвратом, возможно ли сделать фильтр по типу отдела и вернуть два jon-объекта из того же метода.Метод в контроллере для возврата двух объектов json

ответ

2

Несомненно. Вы можете добавить еще одно свойство в свой анонимный объект и вернуть его.

public JsonResult GetDetails() 
{ 
    var customers = GetCustomerDetails(); 
    var names = customers.Select(e => new {e.custname}).Distinct().ToList(); 
    var depts = customers.Select(e => new { e.deptname}).Distinct().ToList(); 
    var deptSubSet = depts.Where(f=>f.deptname=="IT").ToList(); 
    //replace this with your condition 

    var response = new { CustomerNames = names, 
         CustomerDepartments = depts, 
         FilteredDepartments = deptSubSet 
        }; 
    return Json(response, JsonRequestBehaviour.AllowGet(); 
} 

Заменить Where условие LinQ кода независимо где предложение вам нужно использовать, чтобы получить набор подменю.

BTW, результат не будет массивом, он будет объектом с 3 свойствами. Значение этих свойств будет массивом.

+0

Большое вам спасибо за ваш ответ ... можно ли выбрать всех тех клиентов с именем отдела IT и чье имя начинается с «N», можем ли мы объединить два результата. – Agasthya

+0

Да. вы можете использовать [StartsWith] (http://stackoverflow.com/questions/34777044/linq-query-using-contains-is-not-working/34777091#34777091) метод расширения – Shyju

+0

, но как я могу объединить оба имени и отдела и сохраните его в свойстве указанного объекта ответа. – Agasthya

Смежные вопросы