Vue ASP.Net Core WebApi 前后端传参
依靠json传输,属性名称要一致,但是目前我发现大小写不敏感。
再有类型要一致,要不就不传。
错误示范:
// 分类表单classifyForm: {name: '',sort: 0,isShowNav: true,userId: null,userName: '',createTime: '',updateTime: '',isDelete: false},
后端定义:
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方法给这两个属性赋值,使这类属性传递到后端可以被正确转换。