J'essaye d'automap un code de classe. Les codes peuvent avoir des (sous) codes.FluentNhibernate automapping d'un arbre (association récursive)
public class Code
{
public virtual string Key{get;set;}
public virtual Code Parent{get; set;}
public virtual ICollection<Code> SubCodes{get;set;}
private ICollection<Code> subCodes = new Collection<Code>();
}
Cela fonctionne, mais je reçois IdParent colonne et une colonne IDCODE dans ma table. Attribution d'un nom à la propriété Parent IdCode n'aide pas alors j'obtiens une colonne IdIdCode et le IdCode
Que dois-je faire pour résoudre ce problème.
J'utilise AutoMapping avec un objet Configuration
Le nom de la colonne pour le parent n'est pas le problème. Le point est qu'il est ajouté deux fois: une fois pour la clé étrangère et une fois comme mappage pour la propriété. Je souhaite exposer la colonne IdCode générée en tant que propriété à la classe Code ou, si cela n'est pas possible, avoir le champ parent utilisé comme colonne pour la clé étrangère par le mappage. À l'heure actuelle, j'ai deux colonnes dans ma table, et une propriété dans ma classe, ou une colonne dans ma table et aucune propriété dans ma classe. En passant, vous êtes rapide Variante, merci –
Avez-vous une convention de mapping pour le 'Id'? Je ne comprends toujours pas quel est votre problème. Pouvez-vous publier les mappages hbm générés par le mappage automatique? | Vous pouvez les obtenir en utilisant 'ExportTo' dans votre configuration Automapping. – Variant
La colonne IdCode que vous obtenez est probablement le mappage 'Id' généré automatiquement. Quelle est la clé primaire que vous voulez utiliser pour votre entité? – Variant