The ‘ ‘ property on ‘ ‘ could not be set to a ‘System.String‘ value. You must set this property to

VS中报错误如下所示:
The ‘AccountIdentity’ property on ‘T_TRACE’ could not be set to a ‘System.String’ value. You must set this property to a non-null value of type ‘System.Int64’.

翻译如下:
“TRACE”上的“AccountIdentity”属性无法设置为’System.String’类型。必须将此属性类型设置为“System.Int64”且不为空的值;(意思就是说VS中设置的属性类型为Int64,但是数据库中属性类型是string类型(Slserver中是varchar类型),两个地方的数据类型不一致导致的错误)

数据库表设计如下图所示:(表名:T_Trace)
在这里插入图片描述
下图是VS中的Model
在这里插入图片描述

执行如下代码:

return View(traceInfo.OrderByDescending(t => t.RequestDate).ThenByDescending(t => t.TraceKey).ToPagedList(page, pageSize));

VS报错截图如下图所示:

在这里插入图片描述

解决方法

原因:
Model中的字段类型和 数据库表 中的数据类型不对应。
Model中被定义成了long,而数据库中的是varchar(128)对应的Model应该是string类型.

解决方法:
数据库不动,则在VS中把下面的代码

public long AccountIdentity { get; set; }

改成

public string AccountIdentity { get; set; }
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值