Quelle est la meilleure façon de mapper une simple propriété du dictionnaire en utilisant Fluent NHibernate?FluentNHibernate mapping pour le dictionnaire
Répondre
Pour mapper une liste comme un dictionnaire:
HasMany(x => x.Customers)
.AsMap();
Je ne l'ai pas utilisé; donc je ne peux pas donner un exemple.
Demandez regard sur le wiki:
Cached version of the page,
Actual page
J'ai donné la version en cache de la page que le site semble être en panne.
En utilisant une simple relation de classe comme les suivantes:
public class Foo {
public virtual IDictionary<string, Bar> Bars { get; set; }
}
public class Bar {
public virtual string Type { get; set; }
public virtual int Value { get; set; }
}
Vous pouvez mapper ce avec Fluent NHibernate de cette façon:
mapping.HasMany(x => x.Bars)
.AsMap(x => x.Type);
Où Bar.Type
est utilisé comme champ clé dans la dictionnaire.
public class PersistedData
{
public virtual IDictionary<key, value> Dictionary { get; set; }
}
public class PersistedDataMap : ClassMap<PersistedData>
{
HasMany(x => x.Dictionary)
.Table("dict_table")
.KeyColumn("column_id")
.AsMap<string>("key")
.Element("value");
}
Cela carte correctement Dictionary
à la table dict_table
et utiliser column_id
pour l'associer à l'ID de base. Par ailleurs, si vous souhaitez utiliser Enum comme clé dans le dictionnaire, notez que NHibernate.Type.EnumStringType<MyEnum>
peut être utilisé à la place de la chaîne dans .AsMap<string>
pour utiliser la valeur de chaîne au lieu de l'ordinal.
- 1. Mapping dictionnaire avec iBATIS
- 2. BizTalk mapping pour exceler
- 3. NHibernate ou FluentNHibernate ou ActiveRecord?
- 4. FluentNHibernate Automatisation ne générant pas de mappages
- 5. FluentNHibernate - ReadOnlyPropertyThroughCamelCaseField (Prefix.Underscore)
- 6. méthode d'extension pour le dictionnaire des dictionnaires
- 7. LINQ Convertir le dictionnaire pour rechercher
- 8. FluentNHibernate Lookup Table
- 9. FluentNHibernate RTM et NHibernate.Linq
- 10. FluentNhibernate et SQLite
- 11. SchemaExport avec FluentNhibernate
- 12. fluentnhibernate et entités virtuelles
- 13. Clé dans le dictionnaire
- 14. vim mapping
- 15. FluentNHibernate: Obtention du fichier Examples.FirstProject
- 16. FluentNHibernate mappage à une vue
- 17. Bump Mapping sur l'iPhone
- 18. Fluid NHibernate mapping
- 19. NHibernate Conditional Mapping
- 20. Compter booléens dans le dictionnaire
- 21. Problème nHibernate Mapping/Query
- 22. Entity Framework Mapping
- 23. Spring + Hibernate Dynamic Mapping
- 24. NHibernate Mapping à System.Drawing.Color
- 25. C# mapping php params
- 26. Python "étendre" pour un dictionnaire
- 27. NHibernate Inheritance Mapping
- 28. Mapping clavier dans .NET
- 29. NHibernate Mapping table intermédiaire
- 30. EDS et le dictionnaire d'objets
Cela n'aide pas vraiment l'utilisateur. Certes, il était capable de rechercher la bonne méthode, mais l'utilisation de la méthode n'est pas évidente. – Sebazzz