Контекст : я пишу пользовательский соединитель данных для использования в Power BI, используя Образец соединителя MyGraph в качестве основы. Я боролся с Microsoft Graph API для получения CSV-файлов из ReportUri :
ReportUri = "https://graph.microsoft.com/beta/reports/getTeamsUserActivityUserDetail(period='D7')",
Почему я не могу заставить работать часть CSV - это основа другого вопроса. Однако в этом вопросе я сосредоточусь на использовании бета-версии Graph API, где я могу изменить Content-Type: application / octet-stream на Content-Type: application / json в следующем формате:
ReportUri = "https://graph.microsoft.com/beta/reports/getTeamsUserActivityUserDetail(period='D7')?$format=application/json"
Когда я запускаю запрос OData.Feed(ReportUri, null, [ ODataVersion = 4, Implementation = "2.0", OmitValues = ODataOmitValues.Nulls ])
Возвращается следующая ошибка : Нам не удалось разрешить имя типа 'Collection (teamsuserActivityUserDetail)' на EdmType
Запуск этого же запроса через Graph Explorer дает следующие заголовки ответа (обратите внимание, что я заменил GUID):
client-request-id: < this is a guid >
content-length: 1386
content-type: application/json;odata.metadata=minimal;odata.streaming=true;IEEE754Compatible=false;charset=utf-8
request-id: < this is a guid >
Фактический ответ: JSON - вот первые 5 строк:
{
"@odata.context": "https://graph.microsoft.com/beta/$metadata#Collection(teamsUserActivityUserDetail)",
"value": [
{
"@odata.type": "#microsoft.graph.teamsUserActivityUserDetail",
Глядя в @ odata.context (XML), я нахожу следующее:
<Function Name="getTeamsUserActivityUserDetail" IsBound="true" IsComposable="true">
<Parameter Name="reportRoot" Type="graph.reportRoot"/>
<Parameter Name="date" Type="Edm.Date" Nullable="false"/>
<ReturnType Type="Collection(graph.teamsUserActivityUserDetail)" Nullable="false"/>
</Function>
<Function Name="getTeamsUserActivityUserDetail" IsBound="true" IsComposable="true">
<Parameter Name="reportRoot" Type="graph.reportRoot"/>
<Parameter Name="period" Type="Edm.String" Nullable="false" Unicode="false"/>
<ReturnType Type="Collection(graph.teamsUserActivityUserDetail)" Nullable="false"/>
</Function>
Кто-нибудь успешно удалось загрузить JSON вывод из / beta / reports / * по этому пути? Я отмечаю следующий URL: https://blog.yannickreekmans.be/connect-power-bi-to-microsoft-graph/ вызывает в конце эту проблему - но не может найти действительный обходной путь, что не не требует создания мс Graph-прокси