DotNetNext/SqlSugar

新增或更新操作,遇到日期時間精準度

Closed this issue · 4 comments

我目前無主鍵寫法如下,進行資料表的新增或更新操作,但下面寫法如何設定日期時間格式,才能避免匹配不到資料問題,謝謝
var total = 0;
var fullTableName = GetFullTableName();
var dt = GetTableLayout(fullTableName);
var dcs = _sqlSugarClient.Utilities.DataTableToDictionaryList(dt);
var whereColumns = GetWhereColumns(); --array
var ignoreColumns = GetIgnoreColumns();

var dtResult = _sqlSugarClient
.Storageable(dcs, fullTableName)
.WhereColumns(whereColumns) --如何設定時間格式?避免匹配不到資料問題
.ToStorage();
var updateable = dtResult.AsUpdateable;
var insertable = dtResult.AsInsertable;

if (ignoreColumns?.Length > 0)
{
total = await updateable.IgnoreColumns(ignoreColumns)
.ExecuteCommandAsync();
total += await insertable.IgnoreColumns(ignoreColumns)
.ExecuteCommandAsync();
}
else
{
total = await updateable.ExecuteCommandAsync();
total += await insertable.ExecuteCommandAsync();
}

datatable 方法还少个重载。 实体是有时间格式化的,这个我处理一下

SqlSugarCore 5.1.4.167-preview01 更新到 最新预览版本

.WhereColumns(whereColumns,it=>it.DateTime.ToString("yyyy-MM-dd"))
可以调整时间格式

数据库要时间字段

真的非常感謝