JAVA和Nginx 教程大全

网站首页 > 精选教程 正文

Bootstrap blazor弹窗联动中数据去重的问题

wys521 2024-12-04 14:18:57 精选教程 23 ℃ 0 评论

这是官网的例子地址:https://www.blazor.zone/table/dialog

用于实现在弹窗中选择数据,并添加到表格中,但这个例子在实际使用中存在一个问题,例子中弹窗表格不存在搜索的问题,也不会翻页,数据量只有固定的几条,如下:

				ProductTable.SelectedRows.Clear();
        var items = Products;
        if (_confirm)
        {
            items.Clear();
            items.AddRange(SelectedRows);
        }
        _confirm = false;

        var total = items.Count;

在这个例子中,items中的数据在每次查询新增数据时都会清空,这就导致如果弹窗中的数据是查询出来的,那么只会保存当前查询的数据,显然不符合实际使用的情况。

在实际使用时我们可以对此处做下修改,一是不要清理掉数据,二是对新增的数据做去重处理,不然多选几次某条数据,那么它就会在保存时有好几条,造成数据重复。

var items = userGoods;
if (_confirm)
{
    //items.Clear();
    items.AddRange(SelectedRows);
}
_confirm = false;
SelectedRows = [];
////对list对像进行去重
items = items.GroupBy(d => new { d.编码, d.成本价 }).Select(items => items.First()).ToList();
userGoods = userGoods.GroupBy(d => new { d.编码, d.成本价 }).Select(items => items.First()).ToList();
//
var total = items.Count;

经此处理后,就可以通过弹窗来进行各种选择了。

#职场达人说##职场##挑战30天在头条写日记#

本文暂时没有评论,来添加一个吧(●'◡'●)

欢迎 发表评论:

最近发表
标签列表