DotNetNext / SqlSugar

.Net aot ORM Fastest ORM Simple Easy VB.NET Sqlite orm Oracle ORM Mysql Orm 虚谷数据库 postgresql ORm SqlServer oRm 达梦 ORM 人大金仓 ORM 神通ORM C# ORM , C# ORM .NET ORM NET5 ORM .NET6 ORM ClickHouse orm QuestDb ,TDengine ORM,OceanBase orm,GaussDB orm ,Tidb orm Object/Relational Mapping
https://www.donet5.com/Home/Doc
MIT License
5.35k stars 1.34k forks source link

调用数据库更新后数据未改变 #951

Closed ddddtse closed 3 years ago

ddddtse commented 3 years ago

代码如下:


//为tUpdatedTest中的每个item的某一属性赋值
 ...

//更新数据库与界面
Task.Run(() =>
            {
                var db = DB.GetInstance();
                tUpdatedTest.ForEach(item =>
                {
                    db.Updateable(item).ExecuteCommand();
                    _updateTestStatus?.Invoke(item);
                });
            });

界面显示tUpdatedTest的值显示有更新,因此判断属性赋值没有问题,且_updateTestStatus?.Invoke(item)执行成功。 但查看数据库时,数据库中的数据中此属性没有更新。

请问是我调用Updateable的方式不对吗?或者您有什么建议?

DotNetNext commented 3 years ago

Task.Run(() => { var db = DB.GetInstance(); db.Updateable(tUpdatedTest ).ExecuteCommand(); }); 更新只要这么写就行了,如果没有更新就看你传进去的 list 有没有设置主键或者数据是否正确

ddddtse commented 3 years ago

@donet5 谢谢,那我使用的方法没有错。我看看是不是其他地方有更改到数据,又把数据给置空了。;)

DotNetNext commented 3 years ago

没问题就先关了有问题在提发新的ISSUE