MVC3 Validation du Besoin de l'Une De Groupe

Le suivant viewmodel:

public class SomeViewModel
{
  public bool IsA { get; set; }
  public bool IsB { get; set; }
  public bool IsC { get; set; } 
  //... other properties
}

Je souhaite créer un attribut personnalisé qui valide au moins l'une des propriétés disponibles sont remplies. Je prévois être en mesure de joindre un attribut à une propriété et d'attribuer un nom de groupe comme suit:

public class SomeViewModel
{
  [RequireAtLeastOneOfGroup("Group1")]
  public bool IsA { get; set; }

  [RequireAtLeastOneOfGroup("Group1")]
  public bool IsB { get; set; }

  [RequireAtLeastOneOfGroup("Group1")]
  public bool IsC { get; set; } 

  //... other properties

  [RequireAtLeastOneOfGroup("Group2")]
  public bool IsY { get; set; }

  [RequireAtLeastOneOfGroup("Group2")]
  public bool IsZ { get; set; }
}

Je tiens à valider sur le côté client avant la soumission du formulaire en tant que valeurs dans le formulaire de changer et c'est pourquoi je préfère éviter un niveau de classe de l'attribut si possible.

Cela nécessite à la fois côté serveur et côté client validation de localiser toutes les propriétés ayant un objet identique nom de groupe de valeurs transmis en tant que paramètre de l'attribut personnalisé. Est-ce possible? De toute orientation est très apprécié.

InformationsquelleAutor Shawn | 2011-08-30