改装-POST多部分CSV格式返回JSON格式

时间:2018-09-19 12:58:17

标签: c# json csv multipartform-data refit

我对将Refit与C#结合使用还很陌生,但是在发布CSV格式数据时遇到了一些问题。

我已经构造了一个Refit POST方法,用于将CSV格式发布为:

  [Multipart]
  [Post("/async-job?uploadType=multipart")]
  Task<AsyncJobPostResponse> Post([Header("Authorization")] string token
   , string entity_type, string file_format, byte[] file);`

并将其发布:

 private static IRetailApi CreateTClient(string ApiRootUrl)
    {
        var tClient = RestService.For<IRetailApi>(new HttpClient
        {
            BaseAddress = new Uri(ApiRootUrl),
            Timeout = TimeSpan.FromMinutes(5) /*time out for large dataset*/
        },
        new RefitSettings
        {
            JsonSerializerSettings = new JsonSerializerSettings { Converters = { new StringEnumConverter() }, Formatting = Formatting.Indented }
        });
        return tClient;
    }
   private void TPostStore(string token, string TApiRootUrl, int pastDays, Program pObj)
    {
      --gets CSV formated data--
       string storeCSV = pObj.TNPRepo.GetTStoreCSVString(pastDays);

        byte[] array = Encoding.ASCII.GetBytes(storeCSV);
        var TClient = CreateTClient(ApiRootUrl);
        var r2 = TClient.Post(token, "store", "CSV", array).Result;
        timer.Stop();
        Logger.InfoFormat("Request took time : {0}", timer.Elapsed);
  }

POST成功并在右侧发布了CSV,但是如果我查看生成的已解析文件,则数据为JSON格式,甚至可以将一些“双精度”类型的值转换为带引号的“字符串”,而我我努力改变。 我试图创建客户JSONConverter,由于某种原因它没有选择。

0 个答案:

没有答案
相关问题