Je travaille sur une application de planification d'événements pour les contacts d'un annuaire téléphonique. Éviter tous les trucs public virtual
et protected
, ma classe Contact
ressemble:Tout type de mappage avec différents types d'ID
class Contact {
//...
Int32 Id { get; private set; } //primary key;
String Name { get; private set; }
//...
}
Un client m'a demandé de gérer à la fois son propre répertoire et celui de ma demande. J'ai donc pensé à extraire une interface IContact
de Contact
, et d'ajouter une autre classe InternalContact
(ce nom est nul, je sais), en implémentant la même interface. Le problème est que la base de données du client utilise une chaîne affectée comme clé primaire, donc le type d'ID de Contact
et le type d'ID de InternalContact
seront différents. Est-il possible de mapper la propriété Invitation.Contact
en utilisant un mappage de type <any>
, même si les types d'ID sont différents?
Merci à l'avance, Giulio
Générique? Uhm ... ça semble intéressant. ;-) Mais est-ce possible? Que dois-je écrire dans le fichier de mapping? Un lien vers n'importe quel exemple sur cette technique? Merci. – petrux
Oui, c'est possible. Voici un lien vers une introduction: http://msdn.microsoft.com/en-us/library/ms379564(VS.80).aspx – spinon
Il semble que vous n'ayez pas reçu le 'core' de ma question: Je sais ce que sont les génériques, je ne sais pas comment implémenter un mapping polymorphe avec NHibernate où les Id des entités sont de types différents. Ou peut-être qu'il me manque quelque chose? – petrux