В моем приложении MVC мне нужно реализовать функцию отчета Power bi export в формат pdf, используя вызов REST api. До сих пор я пытался,
Ранее я использовал версию 2 Microsoft.PowerBI.Api для использования класса ExportToFileInGroup из sdk. но когда я обновил этот пакет, возник конфликт для Newtonsoft. json, который не был решен.
Usint RestClient string token = GetTokenn(applicationSecret, applicationId);
var client = new RestClient(string.Format("https://api.powerbi.com/v1.0/myorg/groups/{0}/reports/{1}/ExportTo", "mygroupId", "myreportid"));
var request1 = new RestRequest(Method.POST);
request1.AddHeader("postman-token", "28e8e1d8-656b-3f64-a97b-0ee7482cdff3");
request1.AddHeader("cache-control", "no-cache");
request1.AddHeader("content-type", "application/json");
request1.AddHeader("Authorization", String.Format("Bearer {0}", token));
request1.AddParameter("application/json", "{\r\n\t\"format\": \"PDF\"\r\n}", ParameterType.RequestBody);
IRestResponse response1 = client.Execute(request1);
Использование HttpWebRequest
Запрос HttpWebRequest = System. Net .HttpWebRequest.CreateHttp (string.Format ("https://api.powerbi.com/v1.0/myorg/groups/ {0} / reports / {1} / ExportTo", "mygroupid", "myreportid")); // POST веб-запрос на создание источника данных. request.KeepAlive = true; request.Method = "POST"; request.ContentType = "application / json";
//Add token to the request header
request.Headers.Add("Authorization", String.Format("Bearer {0}", token));
using (var streamWriter = new StreamWriter(request.GetRequestStream()))
{
//string json = "[{\"format\":\"PDF\"}]";
string json = "{\"format\":\"PDF\"}";
streamWriter.Write(json);
}
//Write JSON byte[] into a Stream
var response = (HttpWebResponse)request.GetResponse();
Для этих двух я получаю неверный запрос в ответ. любой может помочь мне разобраться в проблеме. Заранее спасибо.