我在extjs模型中有一个浮点值。由于某种原因,我输入并传递给c#controller的任何值,其值始终为null。我检查了json数据是否通过,我可以看到传递的值。
这是我的extjs模型
fields: [
{ name: 'Id', type: 'int' },
{ name: 'FloatValue', type: 'float' },
{ name: 'RecId', type: 'int' },
{ name: 'Valid', type: 'bool' }
]
C#
public class EmployeeRecord
{
public int Id { get; set; }
public double? FloatValue { get; set; }
public int RecId { get; set; }
public bool Valid { get; set; }
}
JsonObject传递给控制器
{ Id: 0, FloatValue: 0.1, RecId: 12, Valid: true }
在C#debug上,'FloatValue'的值始终为null。
这里有什么我想念的东西。
更新 -
var employee = new Object();
employee.Id = 0;
employee.FloatValue = 0.1;
employee.RecId = 12;
employee.Valid = true;
Ext.Ajax.request({
method: 'POST',
scope: this,
url: 'EmployeeController/UpdateRecord',
headers: { 'Content-Type': 'application/json' },
dataType: 'json',
jsonData: { employeeRec: employee },
success: function (Response) {},
failure: function () {}
});
C#
public static EmployeeRecord UpdateRecord(IList<EmployeeRecord> employeeRec)
{
//Here employeeRec.FloatValue is null but other property has their values.
}
答案 0 :(得分:0)
这种行为在getter或setter中可能会出现错误。你可以给setter提供正确的valur,但是如果它设置得很糟糕,或者getter之后得到的东西比写的更多,你可以很容易地看到null。
最有可能的吸气剂或灭火器根本不会起作用。