avec nhibernate fluide, existe-t-il un moyen de basculer dynamiquement la table d'une cartographie à l'exécution?NHibernate fluide, changer dynamiquement Table de correspondance?
Par exemple:
public class XYClassMap : ClassMap<XY>
{
public XYClassMap()
{
Table("XYTable");
Id(d => d.Id).GeneratedBy.Identity();
Map(d => d.Value);
(...)
Étant donné qu'il ya plusieurs plugins, chacun d'entre eux utilise cette une classe, mais ils ont besoin de travailler avec des tables différentes. Je cherche quelque chose comme ceci:
public class XY {
public string Tablename {get; set;}
}
public class XYClassMap : ClassMap<XY>
{
public XYClassMap()
{
Table(Tablename);
Id(d => d.Id).GeneratedBy.Identity();
Map(d => d.Value);
(...)
Ainsi, chaque méthode d'action pourrait travailler avec la même classe et seulement aurait besoin de définir cette propriété un « Tablename ».
Merci pour toute aide,
Steffen
C'est quelque chose que j'ai essayé (échoué au début et abandonné en raison de la pression de l'horaire). Merci beaucoup, je vais vérifier dès que je suis à mon PC de développement et reviendra ici;) Excellent travail, continuez! – Steffen
Fantastique! Cela fonctionne parfaitement. J'ai utilisé votre idée de cartographier la classe de base générique, l'importation tous les modèles de plugins via MEF et fait le dépôt de plug-in récupérer les données comme celui-ci: Liste publique GetData (id int, string modelClassname) où T: IData { return session.Linq (modelClassname) .Where (d => d.ObjectId == id) .ToList(); } Merci pour votre inspiration, j'accepte immédiatement :) –
Steffen
heureux d'entendre que vous l'avez fonctionné :) –