我如何检查可空整数数组是否为空?
How can i check that an array of nullable integers is Null?
此 class 是通过 AJAX post.
填充的
public class FilterViewModel
{
public int?[] size { get; set; }
public decimal? Price { get; set; }
}
可以通过
轻松查看价格 属性
if (Price.HasValue)
{
}
但是尺寸 属性 呢?
尽管它被声明为可为空并且其中不存在任何数据,但这里是烧毁...
这是数据 posted
RAW
{"man":"2","size":"","color":"","Order":"0","Sorting":"0"}
Ajax post 执行为
$.ajax({
url: path, type: "POST", cache: "false",
dataType: "json", contentType: "application/json; charset=utf-8",
data: JSON.stringify(postData),
traditional: true,
converters: {'text json': true}
}).success(function (responseText) {
$('#Grid').replaceWith(responseText);
}).error(function (responseText){
swal("Error!", "Ooops", "error");
});
数组是引用类型,无论存储在其中的值是什么类型,因此要检查是否为 null - size == null
.
但看起来您实际上在数组中有元素 - 您还可以检查是否所有元素都是 "null",例如 size.All(x => !x.HasValue)
.
请注意,上面回答了您的问题,但不太可能解决您的问题,这可能与请求发送到服务器的方式有关。正如评论中所建议的那样,使用 Fiddler 查看确切的请求可能会有所帮助。
此 class 是通过 AJAX post.
填充的 public class FilterViewModel
{
public int?[] size { get; set; }
public decimal? Price { get; set; }
}
可以通过
轻松查看价格 属性if (Price.HasValue)
{
}
但是尺寸 属性 呢? 尽管它被声明为可为空并且其中不存在任何数据,但这里是烧毁...
这是数据 posted
RAW
{"man":"2","size":"","color":"","Order":"0","Sorting":"0"}
Ajax post 执行为
$.ajax({
url: path, type: "POST", cache: "false",
dataType: "json", contentType: "application/json; charset=utf-8",
data: JSON.stringify(postData),
traditional: true,
converters: {'text json': true}
}).success(function (responseText) {
$('#Grid').replaceWith(responseText);
}).error(function (responseText){
swal("Error!", "Ooops", "error");
});
数组是引用类型,无论存储在其中的值是什么类型,因此要检查是否为 null - size == null
.
但看起来您实际上在数组中有元素 - 您还可以检查是否所有元素都是 "null",例如 size.All(x => !x.HasValue)
.
请注意,上面回答了您的问题,但不太可能解决您的问题,这可能与请求发送到服务器的方式有关。正如评论中所建议的那样,使用 Fiddler 查看确切的请求可能会有所帮助。