ASP Web API字符串参数检索" null"

时间:2017-05-25 08:26:41

标签: angularjs asp.net-web-api

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

你能帮我找出可能的问题吗?

1 个答案:

答案 0 :(得分:0)

好的,第一个简单的解决方案是检查null中的param是javascript,而不是将其添加到表单数据中。

第二个问题是涉及自定义媒体格式化程序FormMultipartEncodedMediaTypeFormatter,它不处理这种情况。我刚刚下载了格式化程序的源代码并添加了对这种情况的支持。