Exemplo n.º 1
0
        public ActionResult Create(ArticleViewModels item, HttpPostedFileBase urlImage)
        {
            article articlex = new article();

            //Import Image
            if (urlImage == null || urlImage.ContentLength == 0)
            {
                ViewBag.disabled = true;
                ViewBag.Error    = "Please select a valid image ";
                return(View("Create"));
            }//end if
            else
            {
                if (ModelState.IsValid && urlImage.FileName.ToLower().EndsWith("jpg") || urlImage.FileName.ToLower().EndsWith("png") || urlImage.FileName.ToLower().EndsWith("jepg"))
                {
                    string pathImage = Server.MapPath("~/Content/" + urlImage.FileName);
                    if (System.IO.File.Exists(pathImage))
                    {
                        System.IO.File.Delete(pathImage);
                    }//end if
                    urlImage.SaveAs(pathImage);

                    articlex.body      = item.Body;
                    articlex.name      = item.Name;
                    articlex.image     = urlImage.FileName;
                    articlex.date      = DateTime.Now;;
                    articlex.favourite = false;
                    articlex.other     = "v";
                    articlex.user      = null;

                    /*Using Web Service*/

                    //HttpClient Client = new HttpClient();
                    //Client.BaseAddress = new Uri("http://localhost:18080/");
                    //Client.DefaultRequestHeaders.Accept.Add(new MediaTypeWithQualityHeaderValue("application/json"));
                    ////HttpResponseMessage response = Client.GetAsync("pidev-web/rest/article").Result;
                    //Client.PostAsJsonAsync<article>("pidev-web/rest/article", articlex).ContinueWith((postTask) => postTask.Result.EnsureSuccessStatusCode());

                    /*Using DbContext*/
                    //ctx.article.Add(articlex);
                    //ctx.SaveChanges();
                    /*Using designe pattern*/
                    serviceArticle.Add(articlex);
                    serviceArticle.Commit();

                    return(RedirectToAction("index"));
                }//end if
                else
                {
                    ViewBag.disabled = true;
                    ViewBag.Error    = "File type is not valid";
                    return(RedirectToAction("Create"));
                }
            }//end else
        }
Exemplo n.º 2
0
        public ActionResult Create(ArticleFormViewModel model)
        {
            var admuser = serviceAdmUser.GetItem_Email(User.Identity.GetUserName());

            try
            {
                if (ModelState.IsValid)
                {
                    string XmlParams = string.Empty;
                    foreach (string key in Request.Form.AllKeys)
                    {
                        if (key.StartsWith(prefix))
                        {
                            XmlParams = XMLReader.SetValue(XmlParams, key.Replace(prefix, ""), Request.Form[key]);
                        }
                    }

                    serviceArticle.Add(new ArticleDto()
                    {
                        SchemaId        = model.SchemaId,
                        ArticleParentId = model.ArticleParentId,
                        Title           = model.Title,
                        SubTitle        = model.SubTitle,
                        Resumen         = WebUtility.HtmlDecode(model.Resumen),
                        Description     = WebUtility.HtmlDecode(model.Description),
                        Description2    = WebUtility.HtmlDecode(model.Description2),
                        XmlParams       = XmlParams,
                        PublishDate     = model.PublishDate,
                        ShowInHome      = model.ShowInHome,
                        StaticUrl       = model.StaticUrl,
                        Position        = model.Position,
                        AuthorId        = admuser.UserId,
                        RegisterDate    = DateTime.Now,
                        Active          = model.Active
                    });
                }
                else
                {
                    ModelState.AddModelError("Error", "Algunos datos ingresados no son válidos");
                    return(View(model));
                }
            }
            catch (Exception ex)
            {
                ModelState.AddModelError("Error", "Se ha producido un error: " + ex.Message);
                return(View(model));
            }

            return(RedirectToAction("Index", new { SchemaId = ViewBag.SchemaId, ArticleParentId = ViewBag.ArticleParentId }));
        }