masterOk
@masterOk

Как сохранить данные в Asp.net MVC когда связь много ко многим?

Здравствуйте.
Подскажите пожалуйста как сохранить теги для новости теги в тексбоксе через запятую.
Есть две таблицы
public class News
    {       
        public Int64 NewsId { get; set; }

        [DisplayName("Название новости")]
        [Required(ErrorMessage = "Заполните название новости")]
        public string Title { get; set; }

        [DisplayName("Краткое содержание новости")]
        [Required(ErrorMessage = "Заполните краткое содержание")]
        [DataType(DataType.MultilineText)]
        [AllowHtml]
        public string Abstract { get; set; }

        [DisplayName("Новость")]
        [Required(ErrorMessage = "Заполните новость")]
        [DataType(DataType.MultilineText)]
        [AllowHtml]
        public string Body { get; set; }

        [DisplayName("Дата добавления сообщения")]
        [Required(ErrorMessage = "Заполните дату")]
        public DateTimeOffset AddedDate { get; set; }

        [DisplayName("Сообщение одобрено")]        
        public bool IsApproved { get; set; }  

        public virtual ICollection<Tags.Tags> Tags { get; set; }
     
    }

и
public class Tags
    {
        [Key]
        public string Tag { get; set; }       

        [DisplayName("Дата добавления тега")]
        public DateTimeOffset AddedDate { get; set; }      

        public virtual ICollection<News.News> News { get; set; }
    }

и контроллер
public async Task<ActionResult> Create([Bind(Include = "NewsId,Title,Abstract,Body")] News news)
        {            
            if (ModelState.IsValid)
            {
                news.AddedDate = DateTimeOffset.Now;          
                
                db.News.Add(news);
                await db.SaveChangesAsync();
                return RedirectToAction("Index");
            }

            return View(news);
        }
  • Вопрос задан
  • 2804 просмотра
Решения вопроса 1
masterOk
@masterOk Автор вопроса
Все сам разобрался

db.Tags.Find("Nec").News.Add(news);
await db.SaveChangesAsync();
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы
Монополия Санкт-Петербург
от 87 000 до 87 000 ₽
Enqo Москва
от 200 000 ₽
Контур Екатеринбург
от 200 000 ₽