Создайте идентификатор GUID из строки, которая не находится в формате guid

Я хотел бы создать GUID из входной строки. Допустим, у меня есть guid, полученный от пользователя, который является

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

Так что я могу сделать:

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

который собирается успешно проанализировать.

но как сделать жизнь пользователя проще и позволяют вводить:

81a130d2502f4cf1a37663edeb000e9f

который без тире и по-прежнему преобразует его в guid.

Если я попытаюсь использовать тот же метод, он будет бросать исключение, жалуясь на отсутствующие пунктир в формате guid.

какие идеи?

3 ответов


попробовать

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

в дополнение к ParseExact"N" в качестве второго аргумента), вы могли бы использовать перегрузку Guid конструктор, который принимает строку; он также позволяет указать ваше значение без тире.

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

использовать метод parseexact способ:

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