J'ai un Foo de classe avec un UpdateMe de champ de type Confirmation comme décrit ci-dessous ..ASP.NET MVC2 UpdateModel pas mettre à jour une propriété publique inclus dans la liste blanche
public class Foo
{
public Confirmation UpdateMe{get;set;}
public int BarInt{get;set}
}
public enum Confirmation
{
N = 0,
Y = 1
}
J'ai une liste blanche qui a UpdateMe, et fonctionne de la façon suivante ...
[AcceptVerbs(HttpVerbs.Post), ValidateAntiForgeryToken]
public ActionResult Update(Foo foo)
{
if(ModelState.IsValid)
{
//this is the Foo as it exists in the backend..using Linq2Sql read/record behavior
Foo existingFoo = _Service.GetFoo();
string[] whitelist = { "UpdateMe" };
UpdateModel(existingFoo, whitelist);
//do persistence stuff down here...
}
}
le modèle est lié très bien, Foo entrant a toute valeur UpdateMe je mis, mais la procédure de mise à jour UpdateModel n'est pas la propriété.
Cela a été ridiculement simplifié, mais rassurez-vous, le UpdateModel fonctionne pour les autres propriétés qui passent par l'action.
Une idée de pourquoi cette propriété publique particulière ne se met pas à jour?