Cela ressemble à du travail pour attributes. Vous pouvez utiliser un attribut pour décorer vos propriétés avec les informations d'en-tête exactes que vous souhaitez. Par exemple:
<Description("Endereço")> _
Public Property String Endereco ....
Ensuite, utilisez la réflexion pour extraire cette valeur dans le code. Vous pouvez également utiliser la valeur de l'attribut en tant que clé dans une table de localisation pour faciliter la traduction future vers d'autres langues ou utiliser d'autres attributs pour faire des choses comme afficher votre vue sans afficher un champ particulier dans certaines circonstances.
Pour répondre à votre question de réflexion, je suppose que vous êtes déjà au moins un peu à l'aise avec, comme c'est comment vous devez itérer sur les propriétés d'un objet (à moins que ce que vous avez vraiment est un dictionnaire, dans ce cas, vous auriez dû le dire). Alors que vous parcourez les propriétés, les objets avec lesquels vous travaillez sont de type PropertyInfo
et vous pouvez appeler la méthode GetCustomAttributes()
pour ce type afin de trouver les attributs associés à la propriété.
Avez-vous le code pour la réflexion? Merci beaucoup! – Alson
J'espère que cela aide: http://msdn.microsoft.com/en-us/library/b05d59ty.aspx – asawyer
Oh, et cela va cracher une liste IEnumerable d'objets KeyValuePair pour une classe donnée avec le nom de la propriété et les valeurs : public Fonction partagée GetPropertyValueList (ByVal obj As Object) en tant que IEnumerable (Of KeyValuePair (Of String, String)) Retour de p En obj.GetType(). GetProperties() Sélectionnez New KeyValuePair (Of String, String) (p .Name, p.GetValue (obj, Nothing) .ToString()) Fonction de fin – asawyer