Exemplo n.º 1
0
        public ArticleCreateModel ArticleCreate(ArticleCreateModel request)
        {
            ArticleCreateModel articleCreateModel = new ArticleCreateModel();

            LanguageBusiness languageBusiness = new LanguageBusiness();
            ArticleBusiness  articleBusiness  = new ArticleBusiness();

            IEnumerable <Language> languageList = languageBusiness.LanguageList();

            articleCreateModel.LanguageList = new SelectList(languageList, "ID", "Name", request.LanguageID);


            bool existLanguage = languageBusiness.ExistLanguage(request.LanguageID);

            if (!existLanguage)
            {
                articleCreateModel.Alerts.AlertList.Add("Dil bulunamadı!");
                articleCreateModel.Alerts.AlertType = Model.Base.Alerts.AlertTypes.Error;

                return(articleCreateModel);
            }
            else
            {
                bool existSeoName = articleBusiness.ExistSeoName(request.SeoName);

                if (existSeoName)
                {
                    articleCreateModel.Alerts.AlertList.Add("Seo adı daha önce kullanılmış!");
                    articleCreateModel.Alerts.AlertType = Model.Base.Alerts.AlertTypes.Error;

                    return(articleCreateModel);
                }
                else
                {
                    try
                    {
                        ArticleTranslation articleTranslation = articleBusiness.CreateArticleTranslation(request.LanguageID, request.Name, request.SeoName, request.SeoKeyword, request.SeoDescription, request.ShortText, request.LongText, request.Picture, request.ArticleType);

                        articleCreateModel.Alerts.AlertList.Add("İçerik başarıyla eklendi");
                        articleCreateModel.RedirectURL      = "/Management/Article/Index";
                        articleCreateModel.Alerts.AlertType = Model.Base.Alerts.AlertTypes.Success;
                    }
                    catch (Exception ex)
                    {
                        articleCreateModel.Alerts.AlertList.Add("İçerik kaydedilemedi [ " + ex.Message + " ]");
                        articleCreateModel.Alerts.AlertType = Model.Base.Alerts.AlertTypes.Error;
                    }
                }
            }

            return(articleCreateModel);
        }
Exemplo n.º 2
0
        public ArticleTranslation CreateArticleTranslation(long languageID, string name, string seoName, string seoKeyword, string seoDescription, string shortText, string longText, string picture, int articleType)
        {
            DateTime date = DateTime.Now;

            Article article = new Article
            {
                ArticleType = articleType,
                CreatedDate = date,
                UpdatedDate = date
            };

            context.Article.Add(article);

            ArticleTranslation articleTranslation = new ArticleTranslation
            {
                LanguageID     = languageID,
                Name           = name,
                ArticleID      = article.ID,
                Picture        = picture,
                SeoDescription = seoDescription,
                SeoKeyword     = seoKeyword,
                SeoName        = seoName,
                ShortText      = shortText,
                LongText       = longText,
                CreatedDate    = date,
                UpdatedDate    = date
            };

            context.ArticleTranslation.Add(articleTranslation);

            using (TransactionScope scope = new TransactionScope())
            {
                try
                {
                    context.SaveChanges();
                    scope.Complete();
                }
                catch (Exception ex)
                {
                    throw ex;
                }
            }

            return(articleTranslation);
        }