В описании этого свойства в статье с MSDN указано, что оно возвращает значение типа long, при этом может принимать значение NULL. В качестве замечания указывается, что каждое ключевое слово — это бит в 64-битной маске.
Когда я пытался получить значение из этого свойства, получалась какая-то чушь. А все из-за того, что я не учитывал еще одну особенность этого свойства — только 16 позиций этой маски нужно было обрабатывать, поэтому окончательный код выглядел так:
dr["keywords"] = String.Format("{0:G}",
(StandardEventKeywords)(eventdetail.Keywords.GetValueOrDefault() & 0xFFFF0000000000));
Здесь это делалось с помощью добавления к результату 0xFFFF0000000000, а значения брались из перечисления enum [FlagsAttribute] StandardEventKeywords. Причем, по скольку это перечисление было FlagsAttribute, то в результирующую строку могло передаваться сразу несколько результатов через запятую (хотя в EventViewer я такого не видел).
- C#: Сравнить два массива - 12.12.2024
- EVE-Online: Фильтры каналов - 23.11.2024
- Не приходит СМС для авторизации на сайте Госуслуги - 01.11.2024