예제 #1
0
 public ActionResult Create(CreatePostModel post, HttpPostedFileBase image = null)
 {
     if (ModelState.IsValid)
     {
         ContentRepository.addPost(post, image, User.Identity.Name);
         return RedirectToAction("Index", "Home");
     }
     else
     {
         return View();
     }
 }
예제 #2
0
        //добавляем новый пост в базу
        //postModel - текстовые данные введённый пользователем
        //image - изображение в том виде, в каком мы получили его от браузера
        //username - имя пользователя, которому принадлежит пост
        public static void addPost(CreatePostModel postModel, HttpPostedFileBase image, string username)
        {
            using (DBContext db = new DBContext())
            {
                Post post = new Post();

                //добавление к записи заголовка и текста
                post.Header = postModel.Header;
                post.Text   = postModel.Text;

                //добавляем изображение
                if (image != null)
                {
                    post.Image = new Image
                    {
                        ImageMimeType = image.ContentType,
                        ImageData     = new byte[image.ContentLength]
                    };
                    //записываем битарей изображения
                    image.InputStream.Read(post.Image.ImageData, 0, image.ContentLength);
                }

                //добавляем пользователя, автора поста
                post.User = db.Users.FirstOrDefault(u => u.Login == username);
                Debug.Assert(post.User != null, "пользователь не существует");

                //сохранение в базе
                db.Posts.Add(post);
                db.SaveChanges();

                //добавляем теги в базу
                var tags = addTags(postModel.Tags);

                //ассоциируем с ними пост
                relatedTagsAndPost(post.Id_post, tags);
            }
        }
예제 #3
0
        //добавляем новый пост в базу
        //postModel - текстовые данные введённый пользователем
        //image - изображение в том виде, в каком мы получили его от браузера
        //username - имя пользователя, которому принадлежит пост
        public static void addPost(CreatePostModel postModel, HttpPostedFileBase image, string username)
        {
            using (DBContext db = new DBContext())
            {
                Post post = new Post();

                //добавление к записи заголовка и текста
                post.Header = postModel.Header;
                post.Text = postModel.Text;

                //добавляем изображение
                if (image != null)
                {
                    post.Image = new Image
                    {
                        ImageMimeType = image.ContentType,
                        ImageData = new byte[image.ContentLength]
                    };
                    //записываем битарей изображения
                    image.InputStream.Read(post.Image.ImageData, 0, image.ContentLength);
                }

                //добавляем пользователя, автора поста
                post.User = db.Users.FirstOrDefault(u => u.Login == username);
                Debug.Assert(post.User != null, "пользователь не существует");
                
                //сохранение в базе
                db.Posts.Add(post);
                db.SaveChanges();

                //добавляем теги в базу
                var tags = addTags(postModel.Tags);
                
                //ассоциируем с ними пост
                relatedTagsAndPost(post.Id_post, tags);
            }
        }