Comment appeler DynamicObject.TryGetMember directement?

Je suis la mise en œuvre d'un usage général de la fonction pour extraire une valeur d'un arbitraire fourni dynamique de l'objet, mais ne sais pas comment appeler TryGetMember, car il nécessite un GetMemberBinder qui est abstrait, donc je ne peut pas le créer.
L'échantillon...

public object GetValue(DynamicObject Source, string FieldName)
{
    object Result = null;
    GetMemberBinder Binder = x;  //What object must be provided?
    Binder.Name = FieldName;
    if (Source.TryGetMember(Binder, out Result))
       return Result;

    throw new Exception("The field '" + FieldName + "' not exists");
}

Est-il déjà existante en béton descendant de GetMemberBinder prêt à utiliser? ou un guide pour créer ma propre mise en œuvre?

  • Je dois être en manque de quelque chose... n'est-ce pas toute la méthode exactement ce que la dynamique de l'opérateur d'affectation est déjà fait, à l'exception de moins en moins fiable?
  • Ma question est au sujet d'obtenir une valeur de champ d'un objet dynamique tout en ne sachant pas à la compilation du temps la façon dont ce champ est nommé. Donc, je ne peux pas le code, par exemple, "var Mavaleur = TheDynamicObject.Le champ;" parce qu'à l'exécution le nom du champ est obtenue. Je suis en train d'écrire un objectif général de classe pour traiter externe fourni des objets dynamiques.