مرجع تخصصی برنامه نویسان

انجمن تخصصی برنامه نویسان فارسی زبان

کاربر سایت

علی شهریاری

عضویت از 1393/05/30

رونوشت از متن در زمان ویرایش

  • پنجشنبه 25 خرداد 1396
  • 20:08
تشکر میکنم

با سلام

به مشکل عجب بر خوردم!!

وقتی ی پست رو ویرایش میکنم یکی کپی هم از اون تو جدول اضافه میشه. مشکل کجاست . دیباگ هم کردم error  نمیده و نتونسم بفهمم مشکل از چیه اینجوری نبود یهوی اینجوری شد

پاسخ های این پرسش

تعداد پاسخ ها : 4 پاسخ
کاربر سایت

ایمان مدائنی

عضویت از 1392/01/20

  • جمعه 26 خرداد 1396
  • 07:45

کد اکشن ویرایش را قرار دهید

کاربر سایت

علی شهریاری

عضویت از 1393/05/30

  • جمعه 26 خرداد 1396
  • 14:57

        [HttpPost]
        [ValidateAntiForgeryToken]
        public async Task<ActionResult> Edit([Bind(Include = "Id,Title,ContentUrl,Body,UserId,PublishDate,LastModifyDate,IsPublished,IndexImage,IsCommented,TagId,LanguageId,RankingId,Discriminator")] Content post, string OldImg, string Tags, params string[] SelectCat)
        {
            if (ModelState.IsValid)
            {
                SelectCat = SelectCat ?? new string[] { };

                if (!OldImg.Equals(post.IndexImage) && !string.IsNullOrEmpty(post.IndexImage))
                {
                    var originalDirectory = new DirectoryInfo(string.Format("{0}Files\\Images", Server.MapPath(@"\")));
                    string pathString = originalDirectory.ToString();
                    var path = string.Format("{0}\\{1}", pathString, OldImg);
                    if (System.IO.File.Exists(path))
                    {
                        System.IO.File.Delete(path);
                    }
                }

                string[] currentCats = db.PostCategories.Where(p => p.Post.Id == post.Id).Select(p => p.Category.Name).ToArray<string>();
                Tag tag = await db.Tags.FindAsync(post.TagId);
                if (tag != null)
                {
                    tag.Tags = Tags;
                    db.Entry(tag).State = EntityState.Modified;
                }
                else
                {
                    db.Tags.Add(new Tag { Tags = Tags });
                }

                foreach (var cat in SelectCat.Except(currentCats).ToArray<string>())
                {
                    db.PostCategories.Add(new PostCategories { Post = post, Category = db.Categores.SingleOrDefault(s => s.Name.Equals(cat)) });
                }
                foreach (var cat in currentCats.Except(SelectCat).ToArray<string>())
                {
                    db.PostCategories.Remove(db.PostCategories.Where(c => c.Post.Id == post.Id &&
                        c.Category.Name.Equals(cat)).SingleOrDefault());
                }
              
                post.LastModifyDate = DateTime.Now;
                db.Entry(post).State = EntityState.Modified;
                await db.SaveChangesAsync();
                return RedirectToAction("Index", new { lang = Site.CurrentLang });


            }


            return View(post);

        }

کاربر سایت

ایمان مدائنی

عضویت از 1392/01/20

  • جمعه 26 خرداد 1396
  • 15:18

با Ajax که انجام نمیدید ؟

من کد ها رو دیدم نباید این اتفاق بیوفته

کاربر سایت

علی شهریاری

عضویت از 1393/05/30

  • جمعه 26 خرداد 1396
  • 17:30

نه ajax  نیست . والا خودمم موندم دیباگ میکنم بدون هیچ مشکلی اپدیت میشه ولی بعد توی لیست که نگاه میکنم یکی کپی هم اضافه شده

کاربرانی که از این پست تشکر کرده اند

هیچ کاربری تا کنون از این پست تشکر نکرده است

اگر نیاز به یک مشاور در زمینه طراحی سایت ، برنامه نویسی و بازاریابی الکترونیکی دارید

با ما تماس بگیرید تا در این مسیر همراهتان باشیم :)