я вижу, что asp.net mvc 2 сильно помог мне с типизацией, и, глядя изначально на то, как это работает, я думаю, что, возможно, я делаю что-то не так в asp.net mvc 1 с точки зрения привязки данных для визуализации представления и отправки обратноконтроллер.
У меня часто есть разные объекты для рендеринга вида и отправки обратно в контроллер.это неправильно ??Это кажется естественным, так как при рендеринге представления у вас часто есть модель представления, в которой есть списки для раскрывающихся списков и т. Д., Но для публикации требуется только те свойства, которые необходимы для обратной отправки. Например,
в пути вдля рендеринга моя модель представления может выглядеть следующим образом:
public class PersonViewModel
{
public int Age;
public string FIrst;
public JobCategory[] JobCategories;
public Sport[] Sports;
public int NumberOfChildren;
}
, в этом случае jobCategories и Sports будет использоваться для заполнения выпадающего списка. NumberOfchildren будет просто вставлен html, и я не хочу, чтобы он редактировался.Когда я хочу опубликовать, я хочу передать только тонкий объект только с опубликованными свойствами, поэтому у меня есть другой объект
public class PersonUpdater
{
public int Age;
public string FIrst;
public int JobCategoryId;
}
, это единственные свойства, которые мне нужно передать обратно, чтобы мой контроллер выглядел какthis:
public ActionResult Update(PersonUpdater personUpdater)
{
_repository.UpdateModel(personUpdater).
}
поэтому, учитывая вышеизложенное, предполагается, что строго типизированные вспомогательные методы (ниже) кажутся полезными для входа, но затем могут вызвать проблемы при повторной отправке на сервер, если вы ссылаетесь на другие свойства.
http://weblogs.asp.net/scottgu/archive/2010/01/10/asp-net-mvc-2-strongly-typed-html-helpers.aspx
есть мысли?