2010-08-16 7 views
0

Si vous une personne ont la propriété sur Adresse définie commeConventions d'attribution de noms pour les types de propriété

public class Address 
{ 
    public int AdressId {get; set;} 
    public Person AddressesPerson {get;set;} 
    public string FullAddress {get; set;} 
} 

Quelle est conventions appropriées, le cas échéant, pour nommer une propriété d'un autre type?

Répondre

2

Je ne pense pas qu'il y ait une règle stricte et rapide, mais en général j'aime tenir aux directives suivantes autant que possible:

  • Ne pas répéter le nom du classe. Celui-ci peut être étonnamment difficile à contourner, mais il est généralement résolu en réfléchissant sérieusement à la deuxième règle:
  • Pensez au rôle des propriétés dans la classe, et pas seulement ce que c'est. Dans votre exemple, Owner peut être un nom de propriété approprié, car un Person possède un Address particulier.
2

Nommez la propriété en fonction de sa signification sémantique. Franchement, il est assez étrange d'avoir une propriété Person sur une adresse - ce serait normalement l'inverse. Quel est le sens de la personne ici? Quelle est l'association entre l'adresse et la personne? Vous pourriez avoir Owner ou Resident, par exemple - mais dans d'autres cas cela ne serait pas approprié.

+0

Plusieurs adresses sont stockées en tant qu'historique d'adresses – Shane

+0

@Shane: Alors, j'aurais probablement encore une propriété sur 'Person' définie comme' Dictionary HistoricalAddresses' ou quelque chose de ce genre. Je n'ai jamais entendu parler d'une adresse ayant une personne ... – AllenG

+0

@AlllenG La personne a-t-elle un IList d'adresses sur elle, donc ne vous dérangez pas le mapper à une personne, laissez-la simplement comme PersonId remplir les exigences NHibernate? – Shane

0

Je nommerais la propriété de la relation entre les deux types, par ex. Résident, etc. Propriétaire

0

Choisissez-en un et respectez-le.

Dans votre cas spécifique, je me demande pourquoi une personne est subordonnée à une adresse, plutôt que l'inverse, mais en gros, choisissez celle que vous voulez utiliser et continuez à l'utiliser. Tant que ce n'est pas quelque chose de complètement illisible ou contre certaines directives de codage d'équipe, vous êtes probablement bon.

+0

Plusieurs adresses sont stockées en tant qu'historique d'adresses – Shane

Questions connexes