public static Guid Ссылка(this ВидыСтрокРасчетаПлановойСебестоимости Значение)
        {
            switch (Значение)
            {
            case ВидыСтрокРасчетаПлановойСебестоимости.ПрямыеМатериальныеЗатраты: return(ПрямыеМатериальныеЗатраты);

            case ВидыСтрокРасчетаПлановойСебестоимости.ПрямыеНематериальныеЗатраты: return(ПрямыеНематериальныеЗатраты);

            case ВидыСтрокРасчетаПлановойСебестоимости.КосвенныеЗатраты: return(КосвенныеЗатраты);
            }
            return(Guid.Empty);
        }
 public static ВидыСтрокРасчетаПлановойСебестоимости Получить(this ВидыСтрокРасчетаПлановойСебестоимости Значение, Guid Ссылка)
 {
     if (Ссылка == ПрямыеМатериальныеЗатраты)
     {
         return(ВидыСтрокРасчетаПлановойСебестоимости.ПрямыеМатериальныеЗатраты);
     }
     else if (Ссылка == ПрямыеНематериальныеЗатраты)
     {
         return(ВидыСтрокРасчетаПлановойСебестоимости.ПрямыеНематериальныеЗатраты);
     }
     else if (Ссылка == КосвенныеЗатраты)
     {
         return(ВидыСтрокРасчетаПлановойСебестоимости.КосвенныеЗатраты);
     }
     return(ВидыСтрокРасчетаПлановойСебестоимости.ПустаяСсылка);
 }
 public static byte[] Ключ(this ВидыСтрокРасчетаПлановойСебестоимости Значение)
 {
     return(Ссылка(Значение).ToByteArray());
 }
 public static readonly Guid КосвенныеЗатраты            = new Guid("2e1bfb88-1821-5ada-4e4a-fc7f7934103c"); //Косвенные затраты
 public static ВидыСтрокРасчетаПлановойСебестоимости Получить(this ВидыСтрокРасчетаПлановойСебестоимости Значение, byte[] Ссылка)
 {
     return(Получить(Значение, new Guid(Ссылка)));
 }