我有2个guid列表:
IEnumerable<dynamic> userids = null; IEnumerable<dynamic> lsCheckedUsers = null;
userid和lsCheckedUsers列表使用dapper从sql数据库填充.
我现在希望找到不在lsCheckedUsers中的所有用户标识.
我尝试了以下内容
var userdifference = userids.Where(i => !lsCheckedUsers.Contains(lsCheckedUsers)); var userdifference = userids.Except(lsCheckedUsers);
以上都没有实际返回2之间的差异.
如何获得两者中不存在的guid的区别.
我确信lsCheckedUsers有用户ID中的Guids
解决方法
这是对的:
var userdifference = userids.Except(lsCheckedUsers);
如果您的IEnumerable< dynamic>都可以使用它.实际上包含Guids.打印或检查每个中的项目以确保它们是Guids.
你应该真正使用IEnumerable< Guid>如果这是您所期望的,则将传入的项目转换为Guids.它有望防止你可能会看到的错误.