示例#1
0
        /// <summary>
        /// Вставить данные о файл в таблицу AttachmentTelegram.
        /// </summary>
        /// <param name="mediaFile">Класс описывающий файл. FileId там должен быть пустой, это значит что для этого бота файл отпралвяется впервые.
        /// Для этого мы и записываем информацию в таблицу Attachment, что бы постоянно не отправлять этот файл целиков а только FileId на серевере телеграм</param>
        /// <param name="FileId"></param>
        /// <returns></returns>
        protected int InsertToAttachmentTelegram(MediaFile mediaFile, string FileId)
        {
            try
            {
                if (mediaFile.AttachmentFsId > 0 && FileId != "")
                {
                    using (Db.BotMngmntDbContext db = new Db.BotMngmntDbContext())
                    {
                        var Attach = db.AttachmentTelegram.Where(a => a.AttachmentFsId == mediaFile.AttachmentFsId && a.BotInfoId == BotInfo.Id).FirstOrDefault();

                        if (Attach == null)
                        {
                            AttachmentTelegram attachment = new AttachmentTelegram
                            {
                                AttachmentFsId = mediaFile.AttachmentFsId,
                                FileId         = FileId,
                                BotInfoId      = BotInfo.Id,
                            };

                            db.AttachmentTelegram.Add(attachment);
                            db.SaveChanges();
                            return(attachment.Id);
                        }

                        if (Attach != null && Attach.FileId == null)
                        {
                            Attach.FileId = FileId;
                            db.SaveChanges();
                            return(Attach.Id);
                        }

                        else
                        {
                            return(-1);
                        }
                    }
                }

                else
                {
                    return(-1);
                }
            }

            catch
            {
                return(-1);
            }
        }
示例#2
0
        /// <summary>
        /// Вставить данные о файл в таблицу AttachmentTelegram.
        /// Что бы постоянно не отправлять этот файл целиком а только FileId на серевере телеграм
        /// </summary>
        /// <param name="FileId"></param>
        /// <param name="AttachmentFsId"></param>
        /// <returns></returns>
        protected int InsertToAttachmentTelegram(string FileId, int AttachmentFsId)
        {
            using (Db.BotMngmntDbContext db = new Db.BotMngmntDbContext())
            {
                AttachmentTelegram attachmentTelegram = new AttachmentTelegram
                {
                    AttachmentFsId = AttachmentFsId,
                    FileId         = FileId,
                    BotInfoId      = BotInfo.Id
                };

                db.AttachmentTelegram.Add(attachmentTelegram);

                return(db.SaveChanges());
            }
        }