Guid xml сериализация и проверка - PullRequest
1 голос
/ 31 марта 2020

Можно ли указать способ форматирования свойства Guid в виде строки при использовании XmlSerializer для сериализации объекта?

Псевдокод:

class MyObj {
    public Guid MyProp {get; set;}
}

результирующий XML после Сериализация выглядит следующим образом (Guid без скобок {})

<xml...>
  ..
  <MyProp>00000000-0000-0000-000000000000</MyProp>
  ..
</xml>

XSD для Guid, как указано в Microsoft здесь: https://docs.microsoft.com/en-us/windows/win32/wes/eventschema-guidtype-simpletype

Добавление скобок в Guid требует вызова .ToString("B")

Есть ли способ сообщить XmlSerializer, как отформатировать Guid с использованием указанного c формата ToString?

1 Ответ

0 голосов
/ 31 марта 2020

Получил это, чтобы работать должным образом, делая это:

[XmlIgnore]
public Guid MyProp { get; set; }

[XmlElement("MyProp")]
public string MyPropString
{
    get => MyProp.ToString("B");
    set => MyProp = Guid.Parse(value);
}
...