从非GUID格式的字符串生成GUID

本文关键字:GUID 字符串 格式 从非 | 更新日期: 2023-09-27 18:15:08

我想从输入字符串生成GUID。假设我收到了来自用户的引导,它是

81a130d2-502f-4cf1-a376-63edeb000e9f

所以我可以这样做:

 Guid g = Guid.Parse("81a130d2-502f-4cf1-a376-63edeb000e9f");

解析成功。

但如何让用户的生活更轻松,并允许输入:

81a130d2502f4cf1a37663edeb000e9f

不带破折号,仍然转换为guid

如果我尝试使用相同的方法,它会抛出异常,抱怨guid格式中缺少虚线。

任何想法?

从非GUID格式的字符串生成GUID

Try

Guid.ParseExact("81a130d2502f4cf1a37663edeb000e9f", "N");

除了ParseExact ("N"作为第二个参数)之外,您可以使用Guid构造函数的重载,该构造函数接受字符串;它也允许你指定不带破折号的值。

Guid g = new Guid("81a130d2502f4cf1a37663edeb000e9f");

使用ParseExact方法:

Guid.ParseExact("81a130d2502f4cf1a37663edeb000e9f","N")