Inheritance: СправочникСсылка, IСериализаторProtoBuf, IСериализаторJson
Ejemplo n.º 1
0
        public static V82.СправочникиСсылка.СоглашенияОбИспользованииЭД ВзятьИзКэша(byte[] УникальныйИдентификатор)
        {
            var УИ = new Guid(УникальныйИдентификатор);

            if (Кэш.ContainsKey(УИ))
            {
                return((V82.СправочникиСсылка.СоглашенияОбИспользованииЭД)Кэш[УИ]);
            }
            var Ссылка = new V82.СправочникиСсылка.СоглашенияОбИспользованииЭД(УникальныйИдентификатор);

            Кэш.Add(УИ, Ссылка);
            return(Ссылка);
        }
Ejemplo n.º 2
0
        public СоглашенияОбИспользованииЭД(byte[] УникальныйИдентификатор, int Глубина)
        {
            if (Глубина > 3)
            {
                return;
            }
            if (new Guid(УникальныйИдентификатор) == Guid.Empty)
            {
                return;
            }
            using (var Подключение = new SqlConnection(СтрокаСоединения))
            {
                Подключение.Open();
                using (var Команда = Подключение.CreateCommand())
                {
                    Команда.CommandText = @"Select top 1 
					_IDRRef [Ссылка]
					,_Version [Версия]
					,_Marked [ПометкаУдаления]
					,_IsMetadata [Предопределенный]
					,_Description [Наименование]
					,_Fld23769 [Номер]
					,_Fld23770 [Дата]
					,_Fld23771RRef [СпособОбменаЭД]
					,_Fld23772RRef [СтатусСоглашения]
					,_Fld23773RRef [Организация]
					,_Fld23774RRef [Контрагент]
					,_Fld23775 [Партнер]
					,_Fld23776 [ИдентификаторОрганизации]
					,_Fld23777 [ИдентификаторКонтрагента]
					,_Fld23778RRef [СертификатОрганизацииДляРасшифровки]
					,_Fld23779 [СертификатКонтрагентаДляШифрования]
					,_Fld23780_TYPE [АдресРесурсаОрганизации_Тип],_Fld23780_RRRef [АдресРесурсаОрганизации],_Fld23780_RTRef [АдресРесурсаОрганизации_Вид]
					,_Fld23781 [АдресРесурсаКонтрагента]
					,_Fld23782 [СрокДействия]
					,_Fld23783RRef [Ответственный]
					,_Fld23784 [Комментарий]
					,_Fld23785RRef [ТиповоеСоглашение]
					,_Fld23786 [ПроверятьСертификатыПодписей]
					,_Fld23787 [ЭтоТиповое]
					,_Fld23788 [ЭтоИнтеркампани]
					,_Fld23789RRef [СертификатАбонента]
					,_Fld23790 [ЛогинАбонента]
					From _Reference23128(NOLOCK)
					Where _IDRRef=@УникальныйИдентификатор  "                    ;
                    Команда.Parameters.AddWithValue("УникальныйИдентификатор", УникальныйИдентификатор);
                    using (var Читалка = Команда.ExecuteReader())
                    {
                        if (Читалка.Read())
                        {
                            //ToDo: Читать нужно через GetValues()
                            Ссылка = new Guid((byte[])Читалка.GetValue(0));
                            var ПотокВерсии = ((byte[])Читалка.GetValue(1));
                            Array.Reverse(ПотокВерсии);
                            Версия                              = BitConverter.ToInt64(ПотокВерсии, 0);
                            ВерсияДанных                        = Convert.ToBase64String(ПотокВерсии);
                            ПометкаУдаления                     = ((byte[])Читалка.GetValue(2))[0] == 1;
                            Предопределенный                    = ((byte[])Читалка.GetValue(3))[0] == 1;
                            Наименование                        = Читалка.GetString(4);
                            Номер                               = Читалка.GetString(5);
                            Дата                                = Читалка.GetDateTime(6);
                            СпособОбменаЭД                      = V82.Перечисления /*Ссылка*/.СпособыОбменаЭД.ПустаяСсылка.Получить((byte[])Читалка.GetValue(7));
                            СтатусСоглашения                    = V82.Перечисления /*Ссылка*/.СтатусыСоглашенийЭД.ПустаяСсылка.Получить((byte[])Читалка.GetValue(8));
                            Организация                         = new V82.СправочникиСсылка.Организации((byte[])Читалка.GetValue(9), Глубина + 1);
                            Контрагент                          = new V82.СправочникиСсылка.Контрагенты((byte[])Читалка.GetValue(10), Глубина + 1);
                            Партнер                             = Читалка.GetString(11);
                            ИдентификаторОрганизации            = Читалка.GetString(12);
                            ИдентификаторКонтрагента            = Читалка.GetString(13);
                            СертификатОрганизацииДляРасшифровки = new V82.СправочникиСсылка.СертификатыЭЦП((byte[])Читалка.GetValue(14), Глубина + 1);
                            АдресРесурсаКонтрагента             = Читалка.GetString(19);
                            СрокДействия                        = Читалка.GetDateTime(20);
                            Ответственный                       = new V82.СправочникиСсылка.Пользователи((byte[])Читалка.GetValue(21), Глубина + 1);
                            Комментарий                         = Читалка.GetString(22);
                            ТиповоеСоглашение                   = new V82.СправочникиСсылка.СоглашенияОбИспользованииЭД((byte[])Читалка.GetValue(23), Глубина + 1);
                            ПроверятьСертификатыПодписей        = ((byte[])Читалка.GetValue(24))[0] == 1;
                            ЭтоТиповое                          = ((byte[])Читалка.GetValue(25))[0] == 1;
                            ЭтоИнтеркампани                     = ((byte[])Читалка.GetValue(26))[0] == 1;
                            СертификатАбонента                  = new V82.СправочникиСсылка.СертификатыЭЦП((byte[])Читалка.GetValue(27), Глубина + 1);
                            ЛогинАбонента                       = Читалка.GetString(28);
                            //return Ссылка;
                        }
                        else
                        {
                            //return null;
                        }
                    }
                }
            }
        }
        public ЭДПрисоединенныеФайлы(byte[] УникальныйИдентификатор, int Глубина)
        {
            if (Глубина > 3)
            {
                return;
            }
            if (new Guid(УникальныйИдентификатор) == Guid.Empty)
            {
                return;
            }
            using (var Подключение = new SqlConnection(СтрокаСоединения))
            {
                Подключение.Open();
                using (var Команда = Подключение.CreateCommand())
                {
                    Команда.CommandText = @"Select top 1 
					_IDRRef [Ссылка]
					,_Version [Версия]
					,_Marked [ПометкаУдаления]
					,_IsMetadata [Предопределенный]
					,_Description [Наименование]
					,_Fld23920RRef [Автор]
					,_Fld23921RRef [ВидЭД]
					,_Fld23922_TYPE [ВладелецФайла_Тип],_Fld23922_RRRef [ВладелецФайла],_Fld23922_RTRef [ВладелецФайла_Вид]
					,_Fld23923 [ДатаДокументаОтправителя]
					,_Fld23924 [ДатаИзмененияСтатусаЭД]
					,_Fld23925 [ДатаМодификацииУниверсальная]
					,_Fld23926 [ДатаСоздания]
					,_Fld23927 [ДатаФормированияЭДОтправителем]
					,_Fld23928 [Загружен]
					,_Fld23929 [Зашифрован]
					,_Fld23930RRef [Изменил]
					,_Fld23931 [ИндексКартинки]
					,_Fld23932RRef [Контрагент]
					,_Fld23933RRef [НаправлениеЭД]
					,_Fld23934 [НомерВерсииЭД]
					,_Fld23935 [НомерДокументаОтправителя]
					,_Fld23936 [НомерЭД]
					,_Fld23937 [Описание]
					,_Fld23938RRef [Организация]
					,_Fld23939RRef [Ответственный]
					,_Fld23940 [ОтправительЭД]
					,_Fld23941 [ПодписанЭЦП]
					,_Fld23942 [ПолучательЭД]
					,_Fld23943 [ПричинаОтклонения]
					,_Fld23944 [ПутьКФайлу]
					,_Fld23945 [Размер]
					,_Fld23946 [Расширение]
					,_Fld23947RRef [Редактирует]
					,_Fld23948RRef [СоглашениеЭД]
					,_Fld23949RRef [СтатусИзвлеченияТекста]
					,_Fld23950RRef [СтатусЭД]
					,_Fld23951 [ТекстХранилище]
					,_Fld23952RRef [ТипХраненияФайла]
					,_Fld23953RRef [ТипЭлементаВерсииЭД]
					,_Fld23954RRef [Том]
					,_Fld23955 [УникальныйИД]
					,_Fld23956 [ФайлХранилище]
					,_Fld23957RRef [ЭлектронныйДокументВладелец]
					From _Reference23137(NOLOCK)
					Where _IDRRef=@УникальныйИдентификатор  "                    ;
                    Команда.Parameters.AddWithValue("УникальныйИдентификатор", УникальныйИдентификатор);
                    using (var Читалка = Команда.ExecuteReader())
                    {
                        if (Читалка.Read())
                        {
                            //ToDo: Читать нужно через GetValues()
                            Ссылка = new Guid((byte[])Читалка.GetValue(0));
                            var ПотокВерсии = ((byte[])Читалка.GetValue(1));
                            Array.Reverse(ПотокВерсии);
                            Версия                         = BitConverter.ToInt64(ПотокВерсии, 0);
                            ВерсияДанных                   = Convert.ToBase64String(ПотокВерсии);
                            ПометкаУдаления                = ((byte[])Читалка.GetValue(2))[0] == 1;
                            Предопределенный               = ((byte[])Читалка.GetValue(3))[0] == 1;
                            Наименование                   = Читалка.GetString(4);
                            Автор                          = new V82.СправочникиСсылка.Пользователи((byte[])Читалка.GetValue(5), Глубина + 1);
                            ВидЭД                          = V82.Перечисления /*Ссылка*/.ВидыЭД.ПустаяСсылка.Получить((byte[])Читалка.GetValue(6));
                            ДатаДокументаОтправителя       = Читалка.GetDateTime(10);
                            ДатаИзмененияСтатусаЭД         = Читалка.GetDateTime(11);
                            ДатаМодификацииУниверсальная   = Читалка.GetDateTime(12);
                            ДатаСоздания                   = Читалка.GetDateTime(13);
                            ДатаФормированияЭДОтправителем = Читалка.GetDateTime(14);
                            Загружен                       = ((byte[])Читалка.GetValue(15))[0] == 1;
                            Зашифрован                     = ((byte[])Читалка.GetValue(16))[0] == 1;
                            Изменил                        = new V82.СправочникиСсылка.Пользователи((byte[])Читалка.GetValue(17), Глубина + 1);
                            ИндексКартинки                 = Читалка.GetDecimal(18);
                            Контрагент                     = new V82.СправочникиСсылка.Контрагенты((byte[])Читалка.GetValue(19), Глубина + 1);
                            НаправлениеЭД                  = V82.Перечисления /*Ссылка*/.НаправленияЭД.ПустаяСсылка.Получить((byte[])Читалка.GetValue(20));
                            НомерВерсииЭД                  = Читалка.GetDecimal(21);
                            НомерДокументаОтправителя      = Читалка.GetString(22);
                            НомерЭД                        = Читалка.GetString(23);
                            Описание                       = Читалка.GetString(24);
                            Организация                    = new V82.СправочникиСсылка.Организации((byte[])Читалка.GetValue(25), Глубина + 1);
                            Ответственный                  = new V82.СправочникиСсылка.Пользователи((byte[])Читалка.GetValue(26), Глубина + 1);
                            ОтправительЭД                  = Читалка.GetString(27);
                            ПодписанЭЦП                    = ((byte[])Читалка.GetValue(28))[0] == 1;
                            ПолучательЭД                   = Читалка.GetString(29);
                            ПричинаОтклонения              = Читалка.GetString(30);
                            ПутьКФайлу                     = Читалка.GetString(31);
                            азмер                          = Читалка.GetDecimal(32);
                            асширение                      = Читалка.GetString(33);
                            едактирует                     = new V82.СправочникиСсылка.Пользователи((byte[])Читалка.GetValue(34), Глубина + 1);
                            СоглашениеЭД                   = new V82.СправочникиСсылка.СоглашенияОбИспользованииЭД((byte[])Читалка.GetValue(35), Глубина + 1);
                            СтатусИзвлеченияТекста         = V82.Перечисления /*Ссылка*/.СтатусыИзвлеченияТекстаФайлов.ПустаяСсылка.Получить((byte[])Читалка.GetValue(36));
                            СтатусЭД                       = V82.Перечисления /*Ссылка*/.СтатусыЭД.ПустаяСсылка.Получить((byte[])Читалка.GetValue(37));
                            ТипХраненияФайла               = V82.Перечисления /*Ссылка*/.ТипыХраненияФайлов.ПустаяСсылка.Получить((byte[])Читалка.GetValue(39));
                            ТипЭлементаВерсииЭД            = V82.Перечисления /*Ссылка*/.ТипыЭлементовВерсииЭД.ПустаяСсылка.Получить((byte[])Читалка.GetValue(40));
                            Том          = new V82.СправочникиСсылка.ТомаХраненияФайлов((byte[])Читалка.GetValue(41), Глубина + 1);
                            УникальныйИД = Читалка.GetString(42);
                            ЭлектронныйДокументВладелец = new V82.СправочникиСсылка.ЭДПрисоединенныеФайлы((byte[])Читалка.GetValue(44), Глубина + 1);
                            //return Ссылка;
                        }
                        else
                        {
                            //return null;
                        }
                    }
                }
            }
        }
 public ЭДПрисоединенныеФайлы(byte[] УникальныйИдентификатор,int Глубина)
 {
     if (Глубина>3)
     {
         return;
     }
     if (new Guid(УникальныйИдентификатор) == Guid.Empty)
     {
         return;
     }
     using (var Подключение = new SqlConnection(СтрокаСоединения))
     {
         Подключение.Open();
         using (var Команда = Подключение.CreateCommand())
         {
             Команда.CommandText = @"Select top 1
             _IDRRef [Ссылка]
             ,_Version [Версия]
             ,_Marked [ПометкаУдаления]
             ,_IsMetadata [Предопределенный]
             ,_Description [Наименование]
             ,_Fld23920RRef [Автор]
             ,_Fld23921RRef [ВидЭД]
             ,_Fld23922_TYPE [ВладелецФайла_Тип],_Fld23922_RRRef [ВладелецФайла],_Fld23922_RTRef [ВладелецФайла_Вид]
             ,_Fld23923 [ДатаДокументаОтправителя]
             ,_Fld23924 [ДатаИзмененияСтатусаЭД]
             ,_Fld23925 [ДатаМодификацииУниверсальная]
             ,_Fld23926 [ДатаСоздания]
             ,_Fld23927 [ДатаФормированияЭДОтправителем]
             ,_Fld23928 [Загружен]
             ,_Fld23929 [Зашифрован]
             ,_Fld23930RRef [Изменил]
             ,_Fld23931 [ИндексКартинки]
             ,_Fld23932RRef [Контрагент]
             ,_Fld23933RRef [НаправлениеЭД]
             ,_Fld23934 [НомерВерсииЭД]
             ,_Fld23935 [НомерДокументаОтправителя]
             ,_Fld23936 [НомерЭД]
             ,_Fld23937 [Описание]
             ,_Fld23938RRef [Организация]
             ,_Fld23939RRef [Ответственный]
             ,_Fld23940 [ОтправительЭД]
             ,_Fld23941 [ПодписанЭЦП]
             ,_Fld23942 [ПолучательЭД]
             ,_Fld23943 [ПричинаОтклонения]
             ,_Fld23944 [ПутьКФайлу]
             ,_Fld23945 [Размер]
             ,_Fld23946 [Расширение]
             ,_Fld23947RRef [Редактирует]
             ,_Fld23948RRef [СоглашениеЭД]
             ,_Fld23949RRef [СтатусИзвлеченияТекста]
             ,_Fld23950RRef [СтатусЭД]
             ,_Fld23951 [ТекстХранилище]
             ,_Fld23952RRef [ТипХраненияФайла]
             ,_Fld23953RRef [ТипЭлементаВерсииЭД]
             ,_Fld23954RRef [Том]
             ,_Fld23955 [УникальныйИД]
             ,_Fld23956 [ФайлХранилище]
             ,_Fld23957RRef [ЭлектронныйДокументВладелец]
             From _Reference23137(NOLOCK)
             Where _IDRRef=@УникальныйИдентификатор  ";
             Команда.Parameters.AddWithValue("УникальныйИдентификатор", УникальныйИдентификатор);
             using (var Читалка = Команда.ExecuteReader())
             {
                 if (Читалка.Read())
                 {
                     //ToDo: Читать нужно через GetValues()
                     Ссылка = new Guid((byte[])Читалка.GetValue(0));
                     var ПотокВерсии = ((byte[])Читалка.GetValue(1));
                     Array.Reverse(ПотокВерсии);
                     Версия =  BitConverter.ToInt64(ПотокВерсии, 0);
                     ВерсияДанных =  Convert.ToBase64String(ПотокВерсии);
                     ПометкаУдаления = ((byte[])Читалка.GetValue(2))[0]==1;
                     Предопределенный = ((byte[])Читалка.GetValue(3))[0]==1;
                     Наименование = Читалка.GetString(4);
                         Автор = new V82.СправочникиСсылка.Пользователи((byte[])Читалка.GetValue(5),Глубина+1);
                         ВидЭД = V82.Перечисления/*Ссылка*/.ВидыЭД.ПустаяСсылка.Получить((byte[])Читалка.GetValue(6));
                         ДатаДокументаОтправителя = Читалка.GetDateTime(10);
                         ДатаИзмененияСтатусаЭД = Читалка.GetDateTime(11);
                         ДатаМодификацииУниверсальная = Читалка.GetDateTime(12);
                         ДатаСоздания = Читалка.GetDateTime(13);
                         ДатаФормированияЭДОтправителем = Читалка.GetDateTime(14);
                         Загружен = ((byte[])Читалка.GetValue(15))[0]==1;
                         Зашифрован = ((byte[])Читалка.GetValue(16))[0]==1;
                         Изменил = new V82.СправочникиСсылка.Пользователи((byte[])Читалка.GetValue(17),Глубина+1);
                         ИндексКартинки = Читалка.GetDecimal(18);
                         Контрагент = new V82.СправочникиСсылка.Контрагенты((byte[])Читалка.GetValue(19),Глубина+1);
                         НаправлениеЭД = V82.Перечисления/*Ссылка*/.НаправленияЭД.ПустаяСсылка.Получить((byte[])Читалка.GetValue(20));
                         НомерВерсииЭД = Читалка.GetDecimal(21);
                         НомерДокументаОтправителя = Читалка.GetString(22);
                         НомерЭД = Читалка.GetString(23);
                         Описание = Читалка.GetString(24);
                         Организация = new V82.СправочникиСсылка.Организации((byte[])Читалка.GetValue(25),Глубина+1);
                         Ответственный = new V82.СправочникиСсылка.Пользователи((byte[])Читалка.GetValue(26),Глубина+1);
                         ОтправительЭД = Читалка.GetString(27);
                         ПодписанЭЦП = ((byte[])Читалка.GetValue(28))[0]==1;
                         ПолучательЭД = Читалка.GetString(29);
                         ПричинаОтклонения = Читалка.GetString(30);
                         ПутьКФайлу = Читалка.GetString(31);
                         Размер = Читалка.GetDecimal(32);
                         Расширение = Читалка.GetString(33);
                         Редактирует = new V82.СправочникиСсылка.Пользователи((byte[])Читалка.GetValue(34),Глубина+1);
                         СоглашениеЭД = new V82.СправочникиСсылка.СоглашенияОбИспользованииЭД((byte[])Читалка.GetValue(35),Глубина+1);
                         СтатусИзвлеченияТекста = V82.Перечисления/*Ссылка*/.СтатусыИзвлеченияТекстаФайлов.ПустаяСсылка.Получить((byte[])Читалка.GetValue(36));
                         СтатусЭД = V82.Перечисления/*Ссылка*/.СтатусыЭД.ПустаяСсылка.Получить((byte[])Читалка.GetValue(37));
                         ТипХраненияФайла = V82.Перечисления/*Ссылка*/.ТипыХраненияФайлов.ПустаяСсылка.Получить((byte[])Читалка.GetValue(39));
                         ТипЭлементаВерсииЭД = V82.Перечисления/*Ссылка*/.ТипыЭлементовВерсииЭД.ПустаяСсылка.Получить((byte[])Читалка.GetValue(40));
                         Том = new V82.СправочникиСсылка.ТомаХраненияФайлов((byte[])Читалка.GetValue(41),Глубина+1);
                         УникальныйИД = Читалка.GetString(42);
                         ЭлектронныйДокументВладелец = new V82.СправочникиСсылка.ЭДПрисоединенныеФайлы((byte[])Читалка.GetValue(44),Глубина+1);
                     //return Ссылка;
                 }
                 else
                 {
                     //return null;
                 }
             }
         }
     }
 }
 public СоглашенияОбИспользованииЭД(byte[] УникальныйИдентификатор,int Глубина)
 {
     if (Глубина>3)
     {
         return;
     }
     if (new Guid(УникальныйИдентификатор) == Guid.Empty)
     {
         return;
     }
     using (var Подключение = new SqlConnection(СтрокаСоединения))
     {
         Подключение.Open();
         using (var Команда = Подключение.CreateCommand())
         {
             Команда.CommandText = @"Select top 1
             _IDRRef [Ссылка]
             ,_Version [Версия]
             ,_Marked [ПометкаУдаления]
             ,_IsMetadata [Предопределенный]
             ,_Description [Наименование]
             ,_Fld23769 [Номер]
             ,_Fld23770 [Дата]
             ,_Fld23771RRef [СпособОбменаЭД]
             ,_Fld23772RRef [СтатусСоглашения]
             ,_Fld23773RRef [Организация]
             ,_Fld23774RRef [Контрагент]
             ,_Fld23775 [Партнер]
             ,_Fld23776 [ИдентификаторОрганизации]
             ,_Fld23777 [ИдентификаторКонтрагента]
             ,_Fld23778RRef [СертификатОрганизацииДляРасшифровки]
             ,_Fld23779 [СертификатКонтрагентаДляШифрования]
             ,_Fld23780_TYPE [АдресРесурсаОрганизации_Тип],_Fld23780_RRRef [АдресРесурсаОрганизации],_Fld23780_RTRef [АдресРесурсаОрганизации_Вид]
             ,_Fld23781 [АдресРесурсаКонтрагента]
             ,_Fld23782 [СрокДействия]
             ,_Fld23783RRef [Ответственный]
             ,_Fld23784 [Комментарий]
             ,_Fld23785RRef [ТиповоеСоглашение]
             ,_Fld23786 [ПроверятьСертификатыПодписей]
             ,_Fld23787 [ЭтоТиповое]
             ,_Fld23788 [ЭтоИнтеркампани]
             ,_Fld23789RRef [СертификатАбонента]
             ,_Fld23790 [ЛогинАбонента]
             From _Reference23128(NOLOCK)
             Where _IDRRef=@УникальныйИдентификатор  ";
             Команда.Parameters.AddWithValue("УникальныйИдентификатор", УникальныйИдентификатор);
             using (var Читалка = Команда.ExecuteReader())
             {
                 if (Читалка.Read())
                 {
                     //ToDo: Читать нужно через GetValues()
                     Ссылка = new Guid((byte[])Читалка.GetValue(0));
                     var ПотокВерсии = ((byte[])Читалка.GetValue(1));
                     Array.Reverse(ПотокВерсии);
                     Версия =  BitConverter.ToInt64(ПотокВерсии, 0);
                     ВерсияДанных =  Convert.ToBase64String(ПотокВерсии);
                     ПометкаУдаления = ((byte[])Читалка.GetValue(2))[0]==1;
                     Предопределенный = ((byte[])Читалка.GetValue(3))[0]==1;
                     Наименование = Читалка.GetString(4);
                         Номер = Читалка.GetString(5);
                         Дата = Читалка.GetDateTime(6);
                         СпособОбменаЭД = V82.Перечисления/*Ссылка*/.СпособыОбменаЭД.ПустаяСсылка.Получить((byte[])Читалка.GetValue(7));
                         СтатусСоглашения = V82.Перечисления/*Ссылка*/.СтатусыСоглашенийЭД.ПустаяСсылка.Получить((byte[])Читалка.GetValue(8));
                         Организация = new V82.СправочникиСсылка.Организации((byte[])Читалка.GetValue(9),Глубина+1);
                         Контрагент = new V82.СправочникиСсылка.Контрагенты((byte[])Читалка.GetValue(10),Глубина+1);
                         Партнер = Читалка.GetString(11);
                         ИдентификаторОрганизации = Читалка.GetString(12);
                         ИдентификаторКонтрагента = Читалка.GetString(13);
                         СертификатОрганизацииДляРасшифровки = new V82.СправочникиСсылка.СертификатыЭЦП((byte[])Читалка.GetValue(14),Глубина+1);
                         АдресРесурсаКонтрагента = Читалка.GetString(19);
                         СрокДействия = Читалка.GetDateTime(20);
                         Ответственный = new V82.СправочникиСсылка.Пользователи((byte[])Читалка.GetValue(21),Глубина+1);
                         Комментарий = Читалка.GetString(22);
                         ТиповоеСоглашение = new V82.СправочникиСсылка.СоглашенияОбИспользованииЭД((byte[])Читалка.GetValue(23),Глубина+1);
                         ПроверятьСертификатыПодписей = ((byte[])Читалка.GetValue(24))[0]==1;
                         ЭтоТиповое = ((byte[])Читалка.GetValue(25))[0]==1;
                         ЭтоИнтеркампани = ((byte[])Читалка.GetValue(26))[0]==1;
                         СертификатАбонента = new V82.СправочникиСсылка.СертификатыЭЦП((byte[])Читалка.GetValue(27),Глубина+1);
                         ЛогинАбонента = Читалка.GetString(28);
                     //return Ссылка;
                 }
                 else
                 {
                     //return null;
                 }
             }
         }
     }
 }
 public static V82.СправочникиСсылка.СоглашенияОбИспользованииЭД ВзятьИзКэша(byte[] УникальныйИдентификатор)
 {
     var УИ = new Guid(УникальныйИдентификатор);
     if (Кэш.ContainsKey(УИ))
     {
         return (V82.СправочникиСсылка.СоглашенияОбИспользованииЭД)Кэш[УИ];
     }
     var Ссылка = new V82.СправочникиСсылка.СоглашенияОбИспользованииЭД(УникальныйИдентификатор);
     Кэш.Add(УИ, Ссылка);
     return Ссылка;
 }
 public static СправочникиВыборка.СоглашенияОбИспользованииЭД ВыбратьПоНаименованию(int Первые,string Мин,string Макс)
 {
     using (var Подключение = new SqlConnection(СтрокаСоединения))
     {
         Подключение.Open();
         using (var Команда = Подключение.CreateCommand())
         {
             Команда.CommandText = string.Format(@"Select top {0}
             _IDRRef [Ссылка]
             ,_Version [Версия]
             ,_Marked [ПометкаУдаления]
             ,_IsMetadata [Предопределенный]
             ,_Description [Наименование]
             ,_Fld23769 [Номер]
             ,_Fld23770 [Дата]
             ,_Fld23771RRef [СпособОбменаЭД]
             ,_Fld23772RRef [СтатусСоглашения]
             ,_Fld23773RRef [Организация]
             ,_Fld23774RRef [Контрагент]
             ,_Fld23775 [Партнер]
             ,_Fld23776 [ИдентификаторОрганизации]
             ,_Fld23777 [ИдентификаторКонтрагента]
             ,_Fld23778RRef [СертификатОрганизацииДляРасшифровки]
             ,_Fld23779 [СертификатКонтрагентаДляШифрования]
             ,_Fld23780_TYPE [АдресРесурсаОрганизации_Тип],_Fld23780_RRRef [АдресРесурсаОрганизации],_Fld23780_RTRef [АдресРесурсаОрганизации_Вид]
             ,_Fld23781 [АдресРесурсаКонтрагента]
             ,_Fld23782 [СрокДействия]
             ,_Fld23783RRef [Ответственный]
             ,_Fld23784 [Комментарий]
             ,_Fld23785RRef [ТиповоеСоглашение]
             ,_Fld23786 [ПроверятьСертификатыПодписей]
             ,_Fld23787 [ЭтоТиповое]
             ,_Fld23788 [ЭтоИнтеркампани]
             ,_Fld23789RRef [СертификатАбонента]
             ,_Fld23790 [ЛогинАбонента]
             From _Reference23128(NOLOCK)
             Where _Description between @Мин and @Макс
             Order by _Description", Первые);
             Команда.Parameters.AddWithValue("Мин", Мин);
             Команда.Parameters.AddWithValue("Макс", Макс);
             var Выборка = new V82.СправочникиВыборка.СоглашенияОбИспользованииЭД();
             using (var Читалка = Команда.ExecuteReader())
             {
                 while (Читалка.Read())
                 {
                     var Ссылка = new СправочникиСсылка.СоглашенияОбИспользованииЭД();
                     //ToDo: Читать нужно через GetValues()
                     Ссылка.Ссылка = new Guid((byte[])Читалка.GetValue(0));
                     var ПотокВерсии = ((byte[])Читалка.GetValue(1));
                     Array.Reverse(ПотокВерсии);
                     Ссылка.Версия =  BitConverter.ToInt64(ПотокВерсии, 0);
                     Ссылка.ВерсияДанных =  Convert.ToBase64String(ПотокВерсии);
                     Ссылка.ПометкаУдаления = ((byte[])Читалка.GetValue(2))[0]==1;
                     Ссылка.Предопределенный = ((byte[])Читалка.GetValue(3))[0]==1;
                     Ссылка.Наименование = Читалка.GetString(4);
                         Ссылка.Номер = Читалка.GetString(5);
                         Ссылка.Дата = Читалка.GetDateTime(6);
                         Ссылка.СпособОбменаЭД = V82.Перечисления/*Ссылка*/.СпособыОбменаЭД.ПустаяСсылка.Получить((byte[])Читалка.GetValue(7));
                         Ссылка.СтатусСоглашения = V82.Перечисления/*Ссылка*/.СтатусыСоглашенийЭД.ПустаяСсылка.Получить((byte[])Читалка.GetValue(8));
                         Ссылка.Организация = V82.СправочникиСсылка.Организации.ВзятьИзКэша((byte[])Читалка.GetValue(9));
                         Ссылка.Контрагент = V82.СправочникиСсылка.Контрагенты.ВзятьИзКэша((byte[])Читалка.GetValue(10));
                         Ссылка.Партнер = Читалка.GetString(11);
                         Ссылка.ИдентификаторОрганизации = Читалка.GetString(12);
                         Ссылка.ИдентификаторКонтрагента = Читалка.GetString(13);
                         Ссылка.СертификатОрганизацииДляРасшифровки = V82.СправочникиСсылка.СертификатыЭЦП.ВзятьИзКэша((byte[])Читалка.GetValue(14));
                         Ссылка.АдресРесурсаКонтрагента = Читалка.GetString(19);
                         Ссылка.СрокДействия = Читалка.GetDateTime(20);
                         Ссылка.Ответственный = V82.СправочникиСсылка.Пользователи.ВзятьИзКэша((byte[])Читалка.GetValue(21));
                         Ссылка.Комментарий = Читалка.GetString(22);
                         Ссылка.ТиповоеСоглашение = V82.СправочникиСсылка.СоглашенияОбИспользованииЭД.ВзятьИзКэша((byte[])Читалка.GetValue(23));
                         Ссылка.ПроверятьСертификатыПодписей = ((byte[])Читалка.GetValue(24))[0]==1;
                         Ссылка.ЭтоТиповое = ((byte[])Читалка.GetValue(25))[0]==1;
                         Ссылка.ЭтоИнтеркампани = ((byte[])Читалка.GetValue(26))[0]==1;
                         Ссылка.СертификатАбонента = V82.СправочникиСсылка.СертификатыЭЦП.ВзятьИзКэша((byte[])Читалка.GetValue(27));
                         Ссылка.ЛогинАбонента = Читалка.GetString(28);
                     Выборка.Add(Ссылка);
                 }
                     return Выборка;
             }
         }
     }
 }