我有一个超过10,000行的json文件
所以当我向Power BI请求时
我会收到一条错误消息
(413) Request Entity Too Large。
如果Json文件<这段代码可以使用10,000行
所以如何解决关于行太麻烦的问题
这是我的代码
string ColumnValuesJson = System.IO.File.ReadAllText(@"PowerBI_Column_Values.json");
//POST web request
byte[] byteArray = System.Text.Encoding.UTF8.GetBytes(ColumnValuesJson);
request.ContentLength = byteArray.Length;
Console.WriteLine(byteArray.Length);
Console.ReadLine();
//
using (Stream writer = request.GetRequestStream())
{
writer.Write(byteArray, 0, byteArray.Length);
var response = (HttpWebResponse)request.GetResponse();
/*Time*/
ProcessTime.Stop();
Console.WriteLine("20,000 Rows {0} ms", ProcessTime.ElapsedMilliseconds);
Console.ReadLine();
}
答案 0 :(得分:4)
413
错误。以下是如何修复它,具体取决于您的Web服务器(如果您有权访问它):
Apache
:在httpd.conf文件或本地.htaccess文件中设置LimitRequestBody
指令。 (https://stackoverflow.com/a/3719358/1688568)Nginx
:在nginx.conf中设置client_max_body_size
指令(http://www.cyberciti.biz/faq/linux-unix-bsd-nginx-413-request-entity-too-large/)IIS
:设置uploadreadaheadsize
配置设置(http://blogs.msdn.com/b/jiruss/archive/2007/04/13/http-413-request-entity-too-large-can-t-upload-large-files-using-iis6.aspx)如果您不是服务器的所有者,则可以尝试上传较小的压缩文件或使用multipart/form-data
Content-Type
发送请求。 Here是如何做到的一些例子。
正如评论中所述,您想在AddRows
上调用Power BI REST API
方法。在limitations中提到每个请求只能添加10'000行。最简单的方法是将json文件解析为数组并发送多个请求。要在c#中解析JSON,您可以查看this article