ADO.NET Provider for GraphQL

Build 25.0.9434

ExpandTablesDepth

Specifies how deeply the provider explores nested child tables in the GraphQL schema when building the relational model. This setting only takes effect if the ExposeObjectTables property is set to DEEP.

Data Type

int

Default Value

2

Remarks

The ExpandTablesDepth property determines how many levels of nested objects are converted into separate child tables in the relational model. This property controls the granularity of the resulting schema by defining whether nested objects beyond a certain level are exposed as individual tables or remain part of a parent table.

Example Schema

For example, consider the following GraphQL schema:

type Query {
  companies: [Company]
}

type Company {
  id: ID!
  name: String
  details: [Details]
}

type Details {
  state: String
  addresses: [Address]
}

type Address {
  city: String
  state: String
}

Nesting Levels

In this schema, the nesting levels are as follows:

Level 0: CompanyExposed by the root query.
Level 1: DetailsA list within Company.
Level 2: AddressA list within Details.

  • If ExpandTablesDepth is set to 0, the provider exposes a table for companies.
  • If ExpandTablesDepth is set to 1, the provider exposes a table for details.
  • If ExpandTablesDepth is set to 2, the provider exposes a table for addresses.

Performance Considerations

Set this property to a higher value if your application needs access to deeply nested data. However, be cautious as increasing this value may result in higher processing times and more complex schema representations.

Copyright (c) 2025 CData Software, Inc. - All rights reserved.
Build 25.0.9434