我正在使用ServiceStack ORMLite和Sql Server。现在在我的Servicestack中,POCO类我有一个boolean
字段,在Sql Server中由bit not null
表示。现在我想要更新这个布尔值,让我们说从true到false,反之亦然。但是这不会发生,除了那个布尔列之外所有其他列都正在更新。我正在使用以下行来执行更新操作。
db.UpdateNonDefaults(ChangeBool, p => p.id== request.StudentId);
请帮我解决这个问题。谢谢..
答案 0 :(得分:2)
您无法使用 NonDefaults API执行此操作,因为 false 是布尔值的默认值,而UpdateNonDefaults()
仅更新非默认值< / strong>值。
您可以改为使用UpdateOnly并指定要更新bool列,例如:
db.UpdateOnly(new ChangeBool { Bool = false },
onlyFields: x => x.Bool,
where: x => x.Id == request.StudentId);