ASP.NET MVC2 - конкретные поля в форме передаются через определенный объект? - PullRequest
1 голос
/ 30 апреля 2010

В базе данных есть таблица контактов:

ContactID (int)
FirstName (varchar)
LastName (varchar)
...
XmlFields (xml) // This field is xml type

Чтобы создать новый контакт, я создал два класса - один для обычных полей, а другой - для отображения полей из поля XmlFields.

В контроллере у меня есть следующее:

public ActionResult Create(Contact contact, FormCollection collection)
...

Регулярное поле, которое я ловлю с помощью contact объекта, и те, которые должны быть сохранены как XML в XmlFields Я пытаюсь поймать с collection объектом. Проблема в том, что объект collection перехватывает все поля, поэтому мне интересно, можно ли изолировать поля XML при публикации в конкретный объект, чтобы я мог легко манипулировать ими. Мне это нужно в отдельных объектах, потому что эти xml-поля будут генерироваться динамически и будут отличаться для каждого пользователя.

Заранее спасибо,
Ile

1 Ответ

2 голосов
/ 30 апреля 2010

Вы можете разделить поля как:

public ActionResult Create(int ContactID, string FirstName)

И передать необработанные данные в XML ... MVC не может автоматически определить, куда помещать данные, если вы не подумаете о создании связывателя пользовательской модели: http://davidhayden.com/blog/dave/archive/2008/09/08/CustomModelBinderMoreUIValidationASPNETMVC.aspx, что является еще одним допустимая опция.

НТН.

...