Скажем, я имею следующую модельКак связать объект модели с помощью Controller.TryUpdateModel <TModel> Метод (TModel, String, String [], String []), чтобы исключить некоторые свойства?
public class MyClass
{
public type1 Property1 { get; set; }
public type1 Property2 { get; set; }
public type1 Property3 { get; set; }
public type1 Property4 { get; set; }
public type1 Property5 { get; set; }
}
Я бы, например, как связать только первые 3 свойства. Как я могу сделать это с помощью одного из перегрузки для TryUpdateModel() как этого
TryUpdateModel<TModel> Method (TModel, String, String[], String[])
EDIT
Я не обновить свою модель на методе действия, а с помощью OnActionExecuting фильтра, как это:
public class RegistrationController : Controller
{
protected override void OnActionExecuting(ActionExecutingContext filterContext)
{
var serialized = Request.Form["formViewModel"];
if (serialized != null)
{
formViewModel = (FormViewModel)new MvcSerializer().Deserialize(serialized);
TryUpdateModel(formViewModel);
}
else
formViewModel = (FormViewModel)TempData["formViewModel"] ?? new FormViewModel();
}
//All the action methods are here
}
Итак, я хотел бы, чтобы исключить некоторые из свойств в зависимости от которых действие вид является размещение обратно.
Спасибо за помощь
Но как вы знаете, к какому классу должны быть привязаны данные в форме? Можете ли вы объяснить, что такое «FormViewModel»? – mikerennick
@Mikerennick: извините, я не публиковал все. Я отредактирую вещи – Richard77
, если вы хотите увидеть совершенно другой подход к привязке к модели, вы можете скачать здесь http://valueinjecter.codeplex.com/ решение asp.net mvc samples, я думаю, это могло бы помочь – Omu