依靠json传输,属性名称要一致,但是目前我发现大小写不敏感。
再有类型要一致,要不就不传。
错误示范:
javascript
// 分类表单
classifyForm: {
name: '',
sort: 0,
isShowNav: true,
userId: null,
userName: '',
createTime: '',
updateTime: '',
isDelete: false
},
后端定义:
cs
public class BaseEntityDto<TKey>
{
/// <summary>
/// 主键
/// </summary>
public TKey? Id { get; set; }
/// <summary>
/// 排序
/// </summary>
public int Sort { get; set; }
/// <summary>
/// 数据创建时间
/// </summary>
public DateTime CreateTime { get; set; } = DateTime.Now;
/// <summary>
/// 数据修改时间
/// </summary>
public DateTime UpdateTime { get; set; } = DateTime.Now;
/// <summary>
/// 创建人id
/// </summary>
public long? UserId { get; set; }
/// <summary>
/// 创建人名称
/// </summary>
public string? UserName { get; set; }
/// <summary>
/// 是否伪删除
/// </summary>
public bool IsDelete { get; set; }
}
public class AddClassifyDto:BaseEntityDto<long>
{
/// <summary>
/// 分类名称
/// </summary>
[StringLength(100)]
public string Name { get; set; }
/// <summary>
/// 是否显示在导航栏
/// </summary>
public bool IsShowNav { get; set; }
}
报错信息,提示createTime不可转换为Datatime类型

修正:
要么删除js中对应的属性:
createTime: '',
updateTime: '',
要么利用js方法给这两个属性赋值,使这类属性传递到后端可以被正确转换。