Ejemplo n.º 1
0
        //public FAQService(iDataContext oDC)
        //{
        //    DC = oDC;
        //    //this.Manager = new BaseManager(oDC);
        //    FAQ_Dal = new FAQDal(ComolSession);
        //    this.UC = null;
        //}

        #endregion

        #region Read
        //Per Web Service

        /// <summary>
        /// Recupera una singola FAQ, controllando la comunità.
        /// </summary>
        /// <param name="FaqId">L'ID della FAQ da recuperare</param>
        /// <returns>La FAQ o una FAQ VUOTA se non viene trovata.</returns>
        public DTO_Faq GetFaq(Int64 FaqId)
        {
            Faq SourceFaq = FAQ_Dal.GetFaq(FaqId, UC.CurrentCommunityID);

            DTO_Faq outFaq = new DTO_Faq();

            //CurrentContext.UserContext.CurrentCommunityID
            if (SourceFaq != null) // && SourceFaq.CommunityId == UC.CurrentCommunityID)
            {
                outFaq.ID       = SourceFaq.Id;
                outFaq.Question = SourceFaq.Question;
                outFaq.Answer   = SourceFaq.Answer;

                outFaq.Categories = new List <DTO_Category>();

                if (SourceFaq.onCategories != null && SourceFaq.onCategories.Count() > 0)
                {
                    foreach (Category Cat in SourceFaq.onCategories)
                    {
                        outFaq.Categories.Add(new DTO_Category()
                        {
                            Name = Cat.Name, ID = Cat.Id
                        });
                    }
                }
            }
            //else
            //{
            //    outFaq.Categories = new List<String>();
            //}

            return(outFaq);
        }
Ejemplo n.º 2
0
        /// <summary>
        /// Recupera l'elenco delle faq disponibili in visualizzazione
        /// </summary>
        /// <param name="CategoryID">La categoria con cui filtrarle. Se minore di 0, vengono recuperate TUTTE le faq di quella comunità</param>
        /// <returns>Una lista di FAQ o una lista vuota se non ci sono FAQ.</returns>
        public List <DTO_Faq> GetFaqList(Int64 CategoryID)
        {
            List <DTO_Faq> OutFaqs = new List <DTO_Faq>();

            IList <Faq> srcFaqs = new List <Faq>();

            if (CategoryID > 0)
            {
                srcFaqs = FAQ_Dal.GetFaqs(UC.CurrentCommunityID, CategoryID);
            }
            else
            {
                srcFaqs = FAQ_Dal.GetFaqs(UC.CurrentCommunityID);
            }

            if (srcFaqs != null && srcFaqs.Count() > 0)
            {
                foreach (Faq fq in srcFaqs)
                {
                    DTO_Faq outfq = new DTO_Faq();
                    outfq.ID       = fq.Id;
                    outfq.Question = fq.Question;
                    outfq.Answer   = fq.Answer;
                    if (fq.onCategories != null && fq.onCategories.Count() > 0)
                    {
                        foreach (Category Cat in fq.onCategories)
                        {
                            outfq.Categories.Add(new DTO_Category()
                            {
                                Name = Cat.Name, ID = Cat.Id
                            });
                        }
                    }
                    OutFaqs.Add(outfq);
                }
            }

            return(OutFaqs);
        }