我试图从服务器上获取的json对象生成excel文件。
我的代码如下:
[Route("api/Generate")]
public IHttpActionResult Post(dynamic jsonObject)
{
using (var client = new HttpClient())
using (var formData = new MultipartFormDataContent())
{
var fileFormat = "xlsx";
formData.Add(new StringContent("Test"), "FileName");
formData.Add(new StringContent(fileFormat), "FileFormat");
formData.Add(new StringContent(jsonObject.ToString()), "Data");
var tempPath = Path.Combine(Path.GetTempPath(), Guid.NewGuid().ToString());
if (!Directory.Exists(tempPath))
Directory.CreateDirectory(tempPath);
var tempFilePath = Path.Combine(tempPath, String.Format("{0}.{1}", "Test", fileFormat));
using (var newFile = File.Create(tempFilePath))
{
//here's the error
jsonObject.Content.ReadAsStreamAsync().Result.CopyTo(newFile);
}
var si = new ProcessStartInfo();
si.CreateNoWindow = true;
si.FileName = tempFilePath;
si.UseShellExecute = true;
Process.Start(si);
return Ok();
}
然而,当我尝试测试时,我收到以下错误:
Microsoft.CSharp.RuntimeBinder.RuntimeBinderException:'无法执行 运行时绑定空引用'
虽然jsonObject不为null,但我在执行时设置了一个断点,它包含传递给它的数据。
提前谢谢。