Dapper插入问题================在线等

【Help】 2017-05-03 04:54:20
Dapper插入对象时,如果有对象字段没赋值就提示不能将null值插入XXX,

public class Users
{

public int Id { get; set; }
/// <summary>
/// 登陆名
/// </summary>
public string LoginName { get; set; }
/// <summary>
/// 密码
/// </summary>
public string PassWord { get; set; }
public DateTime CreateAt { get; set; }
}



_user.Users.Insert(new Interface.User.Model.Users {LoginName = "002", PassWord = "111112"});



public void Insert(Users user)
{

ConnectionFactory.db.Insert(user, TableName);
}


这里如果不传入CreateAt和Id字段就提示错误,请问model里面需要添加什么特性或者有什么解决办法?
...全文
390 9 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
  • 打赏
  • 举报
回复
打开ILSpy,看源代码去吧,当初我对Dapper.Extersion做调整改为支持按模取表时,也是看源代码的
【Help】 2017-05-03
  • 打赏
  • 举报
回复
是啊,就是不知道什么特性
  • 打赏
  • 举报
回复
这个没用过啊…… Dapper.Extersion那个我倒是以前用过,好像是可以设置attribute来指定是否要参与sql组成,不过也是快2年前的事情了,代码都忘了
【Help】 2017-05-03
  • 打赏
  • 举报
回复
引用 5 楼 starfd 的回复:
估计你是用了dapper的扩展类库,sql是自动生成的,那你就要查下扩展类库怎么处理这部分的了
我是用的扩展类库ECommon.Dapper呢
  • 打赏
  • 举报
回复
估计你是用了dapper的扩展类库,sql是自动生成的,那你就要查下扩展类库怎么处理这部分的了
  • 打赏
  • 举报
回复
dapper的sql是要你自己写的,如果datetime由数据库自动赋值的话,那你sql里面将datetime赋值的参数,比如@Dt删除不就行了……
【Help】 2017-05-03
  • 打赏
  • 举报
回复

【Help】 2017-05-03
  • 打赏
  • 举报
回复
引用 1 楼 apollokk 的回复:
如果是ID,设置为自增,如果其他可空的设置为nullable,或者写为public DateTime? CreateAt { get; set; } 自增设置: this.Property(t => t.ID).HasDatabaseGeneratedOption(DatabaseGeneratedOption.Identity);
我试过设置可空,但是还是不行呢,他还是提示不能将null插入DateTime
Hello World, 2017-05-03
  • 打赏
  • 举报
回复
如果是ID,设置为自增,如果其他可空的设置为nullable,或者写为public DateTime? CreateAt { get; set; } 自增设置: this.Property(t => t.ID).HasDatabaseGeneratedOption(DatabaseGeneratedOption.Identity);

62,243

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧