Невозможно заставить работать фильтр измерения запроса Google Report - PullRequest
0 голосов
/ 24 октября 2019

У меня есть консольное приложение, которое успешно вызывает API Google Analytics и отправляет ответ с данными, которые я хочу. Однако в одном из отчетов при открытии диапазона дат для получения дополнительных исторических данных значение, возвращаемое для измерения ga: dateHour, не работает с моей программой ... оно возвращает значение "(другое)", а не ожидаемоеdate.

Я обнаружил, что вы можете фильтровать измерения, чтобы исключить записи, основанные на таких значениях, как и запрос может ..... однако независимо от того, как я пытаюсь реализовать фильтр, он либо не исключает строки, которые я хочу, либовызывает проблемы при попытке записать данные в файл, когда они ранее работали нормально.

Я ожидал бы, что, используя мои подходящие обработчики, я могу исключить любые строки, где значение измерения не равно значению моего фильтра.

Прикрепленный фрагмент кода показывает две мои попытки использовать фильтры во время функции, которую я использую для определения отчета, который будет запрашиваться. (Я понимаю, что это не полная функция).

Код над объектом reportRequest выполняется без проблем, но когда я смотрю на возвращенную коллекцию, первая запись имеет значение «(other)» в ga: dateHour измерение

код над оператором return выполняется, но при попытке записать оператор I linq выполняет поиск, который теперь выдает ошибку «последовательность не содержит элементов» .... это несмотря натот факт, что когда я смотрю на объект отчета, он содержит ожидаемые данные и заголовки.

        //Create the Dimension Filter
        //var dimensionFilter = new DimensionFilter();
        //dimensionFilter.DimensionName = "ga:dateHour";
        //dimensionFilter.Expressions = new List<string> { "(other)" };
        //dimensionFilter.Operator__ = "EXACT";
        //dimensionFilter.CaseSensitive = true;
        //dimensionFilter.Not = true;
        //var dimensionFilterClause = new DimensionFilterClause();
        //dimensionFilterClause.Filters = new List<DimensionFilter> { dimensionFilter };

        // Create the ReportRequest object.
        ReportRequest reportRequest = new ReportRequest
        {
            ViewId = viewID,
            DateRanges = new List<DateRange>() { dateRange },
            Dimensions = _dims,
            PageSize = 10000,
            Metrics = _metrics,
            //DimensionFilterClauses = new List<DimensionFilterClause> { dimensionFilterClause }
        };

        //reportRequest.FiltersExpression = "ga:datehour!%(other)";

        return reportRequest;
    }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...