首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >web-api-returning filtered-nested-json-values

web-api-returning filtered-nested-json-values
EN

Stack Overflow用户
提问于 2020-01-07 13:56:26
回答 1查看 23关注 0票数 0

嗨,我想问一个问题,在使用嵌套JSON值的Web API中,过滤是如何工作的……

代码语言:javascript
复制
    public List<Root> definition()
    {
        var all = _db
            .kpi_definition
            .Include("KPI")
            .Select(dl => new Root
            {
                //chart_type = dl.chart_type,
                chart_type = new List<Chart>
                {
                   new Chart { entity_name = dl.entity_name ,
                               entity_display_name = dl.entity_display_name,
                               kpi = new List<KPI>
                               {
                                  new KPI {
                                           kpi_name = dl.kpi_name,
                                           kpi_display_name = dl.kpi_display_name,
                                           required = new List<Required>
                                           {
                                               new Required
                                               {
                                                   //kpi_required = dl.kpi_required
                                               }
                                           },
                                           optional = new List<Optional>
                                           {
                                               new Optional
                                               {
                                                   //kpi_optional = dl.kpi_optional
                                               }
                                           },
                                           objects = new List<Objects>
                                           {
                                               new Objects
                                               {
                                                   field_name = new List<FieldName>
                                                   {
                                                       new FieldName
                                                       {
                                                        entity_display_name = dl.entity_display_name,
                                                        type = "Select or Text",
                                                        @default = "default value(already selected)",
                                                        list = "",
                                                        ID = dl.ID
                                                       }
                                                   }

                                               }
                                           }
                                          }
                               }
                             }
                }
            }).ToList();
        return all;
    }

我想通过entity_name,chart_type和ID进行过滤

但是当我声明一个参数时,它只识别第一个参数chart_type。

EN

回答 1

Stack Overflow用户

发布于 2020-01-07 14:13:21

如果我理解正确的话,那么您需要在select之前添加一个where

代码语言:javascript
复制
 public List<Root> definition()
    {
        var all = _db
            .kpi_definition
            .Include("KPI")
            //Add your filters below
            .Where(dl => dl.entity_name=="" && dl.chart_type="" && dl.ID=1) 
            .Select(dl => new Root
            {
                //chart_type = dl.chart_type,
                chart_type = new List<Chart>
                {
                   new Chart { entity_name = dl.entity_name ,
                               entity_display_name = dl.entity_display_name,
                               kpi = new List<KPI>
                               {
                                  new KPI {
                                           kpi_name = dl.kpi_name,
                                           kpi_display_name = dl.kpi_display_name,
                                           required = new List<Required>
                                           {
                                               new Required
                                               {
                                                   //kpi_required = dl.kpi_required
                                               }
                                           },
                                           optional = new List<Optional>
                                           {
                                               new Optional
                                               {
                                                   //kpi_optional = dl.kpi_optional
                                               }
                                           },
                                           objects = new List<Objects>
                                           {
                                               new Objects
                                               {
                                                   field_name = new List<FieldName>
                                                   {
                                                       new FieldName
                                                       {
                                                        entity_display_name = dl.entity_display_name,
                                                        type = "Select or Text",
                                                        @default = "default value(already selected)",
                                                        list = "",
                                                        ID = dl.ID
                                                       }
                                                   }

                                               }
                                           }
                                          }
                               }
                             }
                }
            }).ToList();
        return all;
    }
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/59622919

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档