J'ai une classe appelée WorkingDays, cette classe nécessite une collection de dates qui sont les dates des jours fériés. Dans notre base de données, nous avons un tableau qui contient ces dates - Je veux nhibernate pour obtenir toutes ces dates et peupler la collection bankHolidays. La capture est cependant je n'ai pas une table qui représente le lien dans la base de données - il semble vraiment inutile quand tous les WorkingDays impls auront exactement la même liste de jours fériés de banque.Collection de mappage NHibernate sans clé étrangère
Alors, comment puis-je mapper cela sans avoir besoin d'ajouter une clé étrangère? J'espère que le code ci-dessous peut mieux illustrer:
public class WorkingDays : Interval
{
public ICollection<DateTime> BankHolidays
{
get;
private set;
}
}
Je ne sais pas comment cela fonctionnera à moins que je charge le DateTimes et les transmette aux WorkingDays - mais parce qu'il hérite de l'Intervalle il n'y aurait aucun moyen de le faire. – Gareth
Je suppose que cela dépend de votre utilisation; Si vous avez besoin de cette collection dans les couches en aval, vous pouvez toujours affecter cette propriété dans le cadre d'une opération de mappage, etc. – DanP
Encore une réflexion ... qu'en est-il d'un IPostLoadEventListener personnalisé qui remplit la collection sur l'entité? Je n'ai jamais rien tenté de tel, mais je ne vois pas pourquoi cela ne marcherait pas. – DanP