2009-07-05 2 views
0

Мне интересно, как вы сохраняете постоянную ценность модели в рамках ASP.NET MVC. Например, когда вы добавляете что-то в модель через представление. Вы возвращаетесь к действию в контроллере, но где вы держите модель? Является ли это частным в контроллере? или он передается из представления в контроллер, потому что, если он становится большим, вы передаете много данных назад и вперед, чтобы добавить/удалить один элемент из Модели.Как обновить модель в MVC

Также любые небольшие примеры, чтобы показать это?

Thanks

+0

Необходимо указать, к какой структуре вы обращаетесь. Существует много основанных на MVC фреймворков: Ruby on Rails, ASP.Net MVC, Grails, Zend и т. Д. –

ответ

0

Что вы имеете в виду? Вы имеете в виду таблицу базы данных, загруженную в объект, такой как ORM Ruby on Rails. Обычно «Модель» представляет собой серию интерфейсов или доменных объектов, которые загружают данные в объекты из базы данных .. или просто просто период базы данных.

Пожалуйста, будьте более конкретным. Существует много MVC-фреймворков и множество разных моделей «Модели»

+0

Я говорю о asp.net MVC.Где Модель является классом или может быть связана с материалом базы данных. Контроллер может передать модель в визуализируемое представление, но мой вопрос заключается в том, как вы отслеживаете изменения в модели. – 2009-07-06 01:44:57

0

Я думаю, вам стоит проверить ASP.NET MVC, например, NerdDinner (от «Professional ASP.NET MVC 1.0»). Скотт Гатри опубликовал на своем сайте html version of the tutorial. Это довольно простой сайт, который они создают в учебнике, и представляет собой отличное введение в ASP.NET MVC (на мой взгляд).

Есть также некоторые good tutorials on the ASP.NET site.

Надеюсь, что это поможет вам с .NET MVC, это отличная структура для использования!

+0

wow, почему downvote? Вопрос был слишком общим для фактического ответа. – mkchandler

0

Вы можете передать модель на страницу, и затем вы можете использовать UpdateModel (название модели) в своем контроллере.

Каждый член модели должен быть имуществом с геттером и сеттером.

На странице вы можете хранить данные в скрытом поле, если вам нужно поддерживать значение вне состояния.

Если у вас возникли проблемы с использованием UpdateModel, вы можете использовать следующее в своем контроллере;

[AcceptVerbs(HttpVerbs.Post)] 
public ActionResult MyAction(int? id, FormCollection collection) 
{ 
    string commentText = collection["myFieldName"]; 
} 

Обычно это будет получать ваши значения от модели.

Надеюсь, это то, о чем вы просили.

0

Подумайте о модели как объекте передачи данных. В списке отображается только страница редактирования или редактирования, вы вытаскиваете ее из слоя данных в виде единого объекта или списка объектов. Контроллер передает его вместе с представлением и отображает его.

В случае вставки новый объект передачи данных создается после обратной связи и обновляется с опубликованными значениями. Затем отправляется обратно на уровень данных для сохранения.

В случае редактирования это происходит из слоя данных в HTTP GET-запросе и используется для предварительного заполнения формы HTML. Затем в ответ на сообщение объект передачи данных обновляется с опубликованными значениями и отправляется обратно на уровень данных для сохранения.

Определенно оформление образцов NerdDinner или Stephen Walther.

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