public static Guid Ссылка(this ОбязательностьЗаполненияОтветаНаВопрос Значение)
        {
            switch (Значение)
            {
            case ОбязательностьЗаполненияОтветаНаВопрос.НеОбязателенКЗаполнению: return(НеОбязателенКЗаполнению);

            case ОбязательностьЗаполненияОтветаНаВопрос.ОбязателенКЗаполнению: return(ОбязателенКЗаполнению);

            case ОбязательностьЗаполненияОтветаНаВопрос.УсловноОбязателенКЗаполнению: return(УсловноОбязателенКЗаполнению);

            case ОбязательностьЗаполненияОтветаНаВопрос.УсловноНеЗаполнять: return(УсловноНеЗаполнять);
            }
            return(Guid.Empty);
        }
 public static ОбязательностьЗаполненияОтветаНаВопрос Получить(this ОбязательностьЗаполненияОтветаНаВопрос Значение, Guid Ссылка)
 {
     if (Ссылка == НеОбязателенКЗаполнению)
     {
         return(ОбязательностьЗаполненияОтветаНаВопрос.НеОбязателенКЗаполнению);
     }
     else if (Ссылка == ОбязателенКЗаполнению)
     {
         return(ОбязательностьЗаполненияОтветаНаВопрос.ОбязателенКЗаполнению);
     }
     else if (Ссылка == УсловноОбязателенКЗаполнению)
     {
         return(ОбязательностьЗаполненияОтветаНаВопрос.УсловноОбязателенКЗаполнению);
     }
     else if (Ссылка == УсловноНеЗаполнять)
     {
         return(ОбязательностьЗаполненияОтветаНаВопрос.УсловноНеЗаполнять);
     }
     return(ОбязательностьЗаполненияОтветаНаВопрос.ПустаяСсылка);
 }
 public static byte[] Ключ(this ОбязательностьЗаполненияОтветаНаВопрос Значение)
 {
     return(Ссылка(Значение).ToByteArray());
 }
 public static readonly Guid УсловноНеЗаполнять           = new Guid("cd8c37a0-a0bd-e03f-46b8-292ca1613f15"); //Условно не заполнять
 public static ОбязательностьЗаполненияОтветаНаВопрос Получить(this ОбязательностьЗаполненияОтветаНаВопрос Значение, byte[] Ссылка)
 {
     return(Получить(Значение, new Guid(Ссылка)));
 }