示例#1
0
        /// <summary>
        /// SaveKnowledgeBase() method is used to save knowledgebase data
        /// </summary>
        /// <param name="KnowledgeBase"></param>
        public void SaveKnowledgeBase(KnowledgeBase knowledgeBase)
        {
            using (var dbContextTransaction = _db.Database.BeginTransaction())
            {
                try
                {
                    tblKnowledgeBase objKnowledgeBase = null;
                    objKnowledgeBase = new tblKnowledgeBase()
                    {
                        Title          = knowledgeBase.Title,
                        Text           = knowledgeBase.Text,
                        DistrictId     = knowledgeBase.DistrictId,
                        RoleId         = knowledgeBase.RoleId,
                        CreateDatetime = knowledgeBase.CreatedDateTime,
                    };
                    _db.tblKnowledgeBases.Add(objKnowledgeBase);
                    _db.SaveChanges();
                    tblAttachment objAttachment = null;

                    if (knowledgeBase.FileDetails != null)
                    {
                        foreach (var file in knowledgeBase.FileDetails)
                        {
                            objAttachment = new tblAttachment()
                            {
                                CreatedDate      = knowledgeBase.CreatedDateTime,
                                CreatedUserId    = knowledgeBase.CreatedUserId,
                                FileName         = file.PhysicalFileName,
                                OriginalFileName = file.OriginalFileName,
                                FileExtension    = file.FileExtension
                            };

                            _db.tblAttachments.Add(objAttachment);
                            _db.SaveChanges();

                            tblKnowledgeBaseAttachment objKnowledgeBaseAttachment = null;
                            objKnowledgeBaseAttachment = new tblKnowledgeBaseAttachment()
                            {
                                AttachmentId    = objAttachment.AttachmentId,
                                KnowledgeBaseId = objKnowledgeBase.KnowledgeBaseId,
                                CreatedDate     = knowledgeBase.CreatedDateTime,
                                CreatedUserId   = knowledgeBase.CreatedUserId
                            };
                            _db.tblKnowledgeBaseAttachments.Add(objKnowledgeBaseAttachment);
                            _db.SaveChanges();
                        }
                    }
                    dbContextTransaction.Commit();
                }
                catch (Exception ex)
                {
                    dbContextTransaction.Rollback();
                    throw ex;
                }
            }
        }
        /// <summary>
        /// SaveKnowledgeBase() method is used to save knowledgebase data
        /// </summary>
        /// <param name="KnowledgeBase"></param>
        public void SaveKnowledgeBase(KnowledgeBase knowledgeBase)
        {

            using (var dbContextTransaction = _db.Database.BeginTransaction())
            {
                try
                {
                    tblKnowledgeBase objKnowledgeBase = null;
                    objKnowledgeBase = new tblKnowledgeBase()
                                        {
                                            Title = knowledgeBase.Title,
                                            Text = knowledgeBase.Text,
                                            DistrictId = knowledgeBase.DistrictId,
                                            RoleId = knowledgeBase.RoleId,
                                            CreateDatetime = knowledgeBase.CreatedDateTime,
                                        };
                    _db.tblKnowledgeBases.Add(objKnowledgeBase);
                    _db.SaveChanges();
                    tblAttachment objAttachment = null;

                    if (knowledgeBase.FileDetails != null)
                    {
                        foreach (var file in knowledgeBase.FileDetails)
                        {
                            objAttachment = new tblAttachment()
                            {
                                CreatedDate = knowledgeBase.CreatedDateTime,
                                CreatedUserId = knowledgeBase.CreatedUserId,
                                FileName = file.PhysicalFileName,
                                OriginalFileName = file.OriginalFileName,
                                FileExtension = file.FileExtension
                            };

                            _db.tblAttachments.Add(objAttachment);
                            _db.SaveChanges();

                            tblKnowledgeBaseAttachment objKnowledgeBaseAttachment = null;
                            objKnowledgeBaseAttachment = new tblKnowledgeBaseAttachment()
                                                        {
                                                            AttachmentId = objAttachment.AttachmentId,
                                                            KnowledgeBaseId = objKnowledgeBase.KnowledgeBaseId,
                                                            CreatedDate = knowledgeBase.CreatedDateTime,
                                                            CreatedUserId = knowledgeBase.CreatedUserId
                                                        };
                            _db.tblKnowledgeBaseAttachments.Add(objKnowledgeBaseAttachment);
                            _db.SaveChanges();
                        }
                    }
                    dbContextTransaction.Commit();
                }
                catch (Exception ex)
                {
                    dbContextTransaction.Rollback();
                    throw ex;
                }
            }
        }