带变量(C#)的graphQL查询:查询的正确语法是什么

时间:2019-11-04 22:50:23

标签: c# testing graphql

我正在使用以下客户端编写C#测试:https://github.com/graphql-dotnet/graphql-client。 这是我的查询:

query getFilters($input: FilterInputType!) {
  getFilterData(input: $input) {
    assetId
    material
    productFamily
    equipmentModel
  }
}

这是查询变量:

{
    "input": {
        "startDate": "2019-09-01T00:00:00",
        "endDate": "2019-09-30T23:59:59"
    }
}

当我在RestClient中执行查询时,它返回数据,但是代码中的查询不起作用。 这是我的代码:

var startDate = "2019-09-01T00:00:00";
var endDate = "2019-09-30T00:00:00";
var dateRange = new { startDate, endDate };
var getFiltersRequest2 = new GraphQLRequest
{
    Query = @"
                {                    
                    query getFilters($input: FilterInputType!) {
                      getFilterData(input: $input) {
                        assetId
                        material
                        productFamily
                        equipmentModel
                        sourceSite
                        destinationSite
                      }
                    }
                }",
    OperationName = "getFilters",
    Variables = new
    {
        input = dateRange
    }
};

//Act
GraphQLClient graphQLClient = new GraphQLClient(endpointUrl);

graphQLClient.DefaultRequestHeaders.Add("Accept", "application/json");
graphQLClient.DefaultRequestHeaders.Add("Authorization", authToken);
var graphQLResponse = await graphQLClient.PostAsync(getFiltersRequest2);

我的语法可能有什么问题?

0 个答案:

没有答案