C# 如何对比两个集合的值 算法 或者比较 不要写死!急急!

wang_maosen 2018-11-29 11:51:42

场景: 例如 张三 排了一个月的排班信息; 一个页面显示31天的排班信息;

我修改了22号 班次为001 ; 保存的时候 把排班表里22号这条信息的修改时间 更新记录一下。

就是在下面代码里面加;



前台保存 是一个Json 字符串 转为List 集合;然后跟数据原数据做对比;更新了哪天排班信息就那个记录更新时间


UpdateBy 和UpdateDate

--------------------------------------------------------------------------------------------


/// <summary>
/// 保存排班信息
/// </summary>
/// <param name="formstring">表单数据</param>
/// <returns></returns>
public ServiceResult Save(string formstring)
{
var result = new ServiceResult();
var serializer = new JavaScriptSerializer();
var detail = serializer.Deserialize<List<JobScheduleDailydetail>>(formstring);
var companyId = EmployeeBasicInfo.CurrentUser.CompanyID;
detail.ForEach(d => d.CompanyID = companyId);
detail.Save();
result.State = true;
return result;
}
...全文
409 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
我就看看你 2018-12-04
  • 打赏
  • 举报
回复
为什么不改那个 传那个,这样全抛 造成多余
吉普赛的歌 2018-11-30
  • 打赏
  • 举报
回复
不明白你为啥要比较, 改了没改在前端不清楚吗? 只把改的部分传回就是了, 没必要自找麻烦
xuzuning 2018-11-30
  • 打赏
  • 举报
回复
既然是 对比两个集合的值,那为何只看到一个集合?
glb2018 2018-11-30
  • 打赏
  • 举报
回复
转成数组,再比较两个数组。
  • 打赏
  • 举报
回复
  • 打赏
  • 举报
回复
为啥要集合? 简单点 0000000000000000000000000000000000000 2的31次方,也就是int.Max正好够用,直接按位进行换算 0代表未排班,1代表排班,js组织完后post到后端,后端同样处理就行 不搞这么复杂的,json直接组织成数组也行,比如[1,3]就代表选择了1号和3号,后端很容易拿出对应的日期
briankyo82 2018-11-29
  • 打赏
  • 举报
回复
理解不了。。
dugupiaoyun 2018-11-29
  • 打赏
  • 举报
回复
为啥不是改1个就提交那1个,改2个就提交那2个的数据?

110,534

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

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