在JavaScript
我有以下代码:
var form = new FormData();
form.append("SomeParam", value);
...
在调试时,我看到value is null
。
服务如下:
this.importNonSalaryPacketExcel = function (data) {
return $http(
{
url: ...,
method: "POST",
data: data,
headers: {
'Content-Type': undefined
},
transformRequest: angular.identity
});
};
Web API
代码如下所示:
[HttpPost]
[Route("api/front/file/importNonSalaryPacketExcel")]
public HttpResponseMessage ImportNonSalaryPacketExcel(ImportNonSalaryPacketExcelParam param)
对象:
public class ImportNonSalaryPacketExcelParam
{
public string SomeParam { get; set; }
...
除了此字段外,每个字段都已正确分配,并且设置为"null"
而不是null
。
你能帮我找出可能的问题吗?
答案 0 :(得分:0)
好的,第一个简单的解决方案是检查null
中的param是javascript
,而不是将其添加到表单数据中。
第二个问题是涉及自定义媒体格式化程序FormMultipartEncodedMediaTypeFormatter
,它不处理这种情况。我刚刚下载了格式化程序的源代码并添加了对这种情况的支持。