1

Привет, ребята, Я изучаю MVC 2, и у меня есть почти все, что понимается, кроме частичной части модели, я понимаю, что такое модель, но на самом деле ее реализует, меня смущает.Реализация навигационных свойств в инфраструктуре Entity

Вот моя ситуация, у меня есть моя БД, которая имеет 3 таблицы;

Идеи - таблица идей Теги - таблица тегов IdeaTag - ссылка таблицы подключения выше 2 таблицы с помощью FKS

Так при использовании Entity Framework (EDMX-) дизайнер в VS2010 я получаю 2 классов, созданных в конструктор, который, очевидно, сопоставляется с моими таблицами БД и свойствами навигации в Idea для тегов. & Идея для тега.

Так что все в порядке, пока я на самом деле не пытаюсь добавить теги к идее, что лучше всего подходит для работы с навигационными свойствами? Я хотел бы добавить текстовое поле, которое затем будет сопоставляться с свойством Tags в классе Idea, но я не уверен, как бы я это сделал.

Большинство учебных пособий MVC, в которых обсуждаются EF или Linq to SQL, являются довольно базовыми.

Если есть какие-либо предложения по учебным пособиям или видеоурокам, в которых обсуждаются вопросы о свойствах навигации и о том, как лучше всего с ними справиться, я бы с радостью принял их на борт. В качестве альтернативы, если есть лучший способ реализовать это, я тоже с удовольствием рассмотрю это.

ответ

0

Увидев, что это в основном отношение «Множество к многим», ознакомьтесь с принятым ответом на этом question.

Он охватывает сценарий, который вы ищете. В вашем случае «ID» - это, вероятно, фактический тег, т. Е. «Entity Framework» или что-то в этом роде.

Используя подход в этом примере, вы можете иметь текстовое поле с разделенным запятыми (или что-то еще) списком имен тегов. Разделение содержимого текстового поля дает вам массив тегов, которые должны быть в коллекции Idea.Tags после того, как вы закончите.

Единственное осложнение, которое у вас есть, я думаю, вы хотите автоматически создавать «новые» теги. Возможно, вам, вероятно, понадобится проверить, существует ли тег перед его присоединением (чтобы добавить его в коллекцию Idea.Tags), если он не существует, а не присоединяет его, вы просто добавите его, чтобы новый тег был вставлен ,

+0

Спасибо за быстрый ответ, хотя я не уверен, как связать текстовое поле с свойством Tags, я полагаю, что это не будет что-то вроде <%: Html.TextBoxFor (model => model.Tags) %>, а скорее TextBox на свой собственный, который затем я получаю данные через FormCollection, правильно? –

Смежные вопросы