Я не очень знаком с процессом вставки «многие ко многим» с использованием Entity Framework 4, POCO.У меня есть блог с 3 таблицами: сообщение, комментарий и тег.A Post может иметь много тегов , а Tag может быть много Posts .Вот модели Post и Tag :
public class Tag
{
public int Id { get; set; }
[Required]
[StringLength(25, ErrorMessage = "Tag name can't exceed 25 characters.")]
public string Name { get; set; }
public virtual ICollection<Post> Posts { get; set; }
}
public class Post
{
public int Id { get; set; }
[Required]
[StringLength(512, ErrorMessage = "Title can't exceed 512 characters")]
public string Title { get; set; }
[Required]
[AllowHtml]
public string Content { get; set; }
public string FriendlyUrl { get; set; }
public DateTime PostedDate { get; set; }
public bool IsActive { get; set; }
public virtual ICollection<Comment> Comments { get; set; }
public virtual ICollection<Tag> Tags { get; set; }
}
Теперь, когда я добавляю новое сообщение, я не уверен, что будет правильным способомсделать.Я думаю, что у меня будет текстовое поле, где я могу выбрать несколько тегов для этого сообщения (эта часть уже выполнена), в моем контроллере я проверю, существует ли тег уже или нет, если нет, тоЯ вставлю новый тег.Но я даже не уверен, основываясь на моделях, которые я создал для EF, создадут ли они таблицу PostsTags, или они просто создают таблицу Tags и Posts и ссылки между ними?
Какя вставлю новую запись и установлю теги для этой записи?Это просто newPost.Tags = Tags
(где выбраны теги, нужно ли мне вообще проверять, существуют ли они?), А затем что-то вроде _post.Add(newPost);
?
Спасибо.