从列表中获取第一个 GUID 类型值
Get First GUID type value from List
我有一个字符串列表,它可以容纳任何数据类型的数据即
[0]: ""
[1]: "api"
[2]: "Lookup"
[3]: "user"
[4]: "MapDesignation"
[5]: "84e57c3c-51d2-4e4d-a7ae-db2ee088a3c6"
代码:
"/api/Lookup/user/MapDesignation/84e57c3c-51d2-4e4d-a7ae-db2ee088a3c6".Split('/')
现在我的要求是我需要从此列表中获取第一个 GUID 值。
该列表可以容纳多个 GUID 类型值,但我只需要第一个。
谢谢
假设您在某种字符串列表中获得了数据:
List<string> data = ....;
string value = data.Where(d => Guid.TryParse(d, out var _).FirstOrDefault();
如果列表中没有有效的 guid,则 value
将是 null
。
如果您的列表是对象列表,那么您可以尝试将值转换为字符串然后解析:
List<object> data = ....;
var value = data.Where(d => Guid.TryParse(d.ToString(), out var _).FirstOrDefault();
如果列表包含一系列类型,其中可能包含 Guid
那么您可以使用 OfType
:
List<object> data = ...
var guid = data.OfType<Guid>().FirstOrDefault();
在这种情况下,如果没有 guid,则 guid
将设置为 Guid.Empty
。
我有一个字符串列表,它可以容纳任何数据类型的数据即
[0]: ""
[1]: "api"
[2]: "Lookup"
[3]: "user"
[4]: "MapDesignation"
[5]: "84e57c3c-51d2-4e4d-a7ae-db2ee088a3c6"
代码:
"/api/Lookup/user/MapDesignation/84e57c3c-51d2-4e4d-a7ae-db2ee088a3c6".Split('/')
现在我的要求是我需要从此列表中获取第一个 GUID 值。 该列表可以容纳多个 GUID 类型值,但我只需要第一个。
谢谢
假设您在某种字符串列表中获得了数据:
List<string> data = ....;
string value = data.Where(d => Guid.TryParse(d, out var _).FirstOrDefault();
如果列表中没有有效的 guid,则 value
将是 null
。
如果您的列表是对象列表,那么您可以尝试将值转换为字符串然后解析:
List<object> data = ....;
var value = data.Where(d => Guid.TryParse(d.ToString(), out var _).FirstOrDefault();
如果列表包含一系列类型,其中可能包含 Guid
那么您可以使用 OfType
:
List<object> data = ...
var guid = data.OfType<Guid>().FirstOrDefault();
在这种情况下,如果没有 guid,则 guid
将设置为 Guid.Empty
。