我想检查列表中的项目是否是有效的 Guid。如果无效则将字符串替换为默认的 Guid

I want to check whether items in a list are valid Guids or not. If not valid then replace string with Guid default

我正在获取包含 Guid 和字符串的值列表。但我只需要 Guid,并且必须用默认的 guid 值替换字符串值。你能建议怎么做吗?

var Value=abc.where(n=>n.userId).select(n=>n.userId);

谢谢

我想你有一个 List<string> 想要在 Guid 列表中转换。
如果是这种情况,答案很简单

var newList = abc.Select(c => Guid.TryParse(c, out Guid guid) ? guid : default(Guid));

如果您不想要无效的 guid,那么

var newList = abc.Where(c => Guid.TryParse(c, out _)).Select(x => new Guid(x));