Je travaille dans un scénario de développement de contenu où les entités sont susceptibles d'être créées dans un état incomplet et restent incomplètes pendant un certain temps. Le workflow impliqué est extrêmement ponctuel, ce qui m'empêche d'utiliser une approche DDD plus structurée.Validation en deux étapes dans ASP.NET MVC
J'ai un ensemble de règles de validation qui doivent être satisfaites à tout moment, et un autre ensemble de règles de validation qui doivent être satisfaites avant qu'une entité soit "complète".
J'utilise déjà la validation ASP.NET MVC intégrée pour valider le premier. Quelles approches pourrais-je utiliser pour capturer ce dernier?
Par exemple: -
public class Foo
{
public int Id { get; set; }
public virtual ICollection<Bar> Bars { get; set; }
}
public class Bar
{
public int Id { get; set; }
[Required] // A Bar must be owned by a Foo at all times
public int FooId { get; set; }
public virtual Foo Foo { get; set; }
[Required] // A Bar must have a working title at all times
public string WorkingTitle { get; set; }
public bool IsComplete { get; set; }
// Cannot use RequiredAttribute on Description as the
// entity is very likely to be created without one,
// however a Description is required before the entity
// can be marked as "IsComplete"
public string Description { get; set; }
}
Gah! Validation conditionnelle basée sur la valeur du champ "IsComplete". Pourquoi je n'y ai pas pensé!/Facepalm. –