Je suis très, très nouveau à Nhibernate et j'apprends sur le pouce (douloureusement). J'essaie d'utiliser NHibernate avec Asp .NET Identity 2.0 et définir mon propre magasin. Cependant, j'ai des problèmes -NHibernate.AspNet.Identity FluentNhibernate - comment ajouter un objet personnalisé à mon ApplicationUSer?
Bien que je comprenne les correspondances entre les entités, je n'arrive pas à créer des mappages pertinents entre les entités. Voici ce que j'ai. Une classe de ApplicationUser et la configuration, semblable à: https://github.com/nhibernate/NHibernate.AspNet.Identity
public class ApplicationUser : IdentityUser
{
public virtual IList<Character> Characters { get; set; }
public ApplicationUser()
{
Characters = new List<Character>();
}
}
Et une classe personnage
public class Character
{
public virtual Guid Id { get; set; }
public virtual ApplicationUser ApplicationUser { get; set; }
}
Et voici ma principale section de configuration:
var configuration = Fluently.Configure()
.Database(
MsSqlConfiguration.MsSql2012.ConnectionString(
"server=localhost;database=SWDB;trusted_connection=true;"))
.Mappings(x=>x.FluentMappings.AddFromAssemblyOf<CharacterMapping>())
.ExposeConfiguration(cfg =>
{
cfg.SetProperty("current_session_context_class", "web");
cfg.AddDeserializedMapping(
MappingHelper.GetIdentityMappings(myEntities), null);
new SchemaExport(cfg).Create(false, true);
}).BuildConfiguration();
Enfin, les applications:
public class ApplicationUserMapping : SubclassMap<ApplicationUser>
{
public ApplicationUserMapping()
{
HasMany(x => x.Characters).Inverse().Cascade.All();
}
}
et
public class CharacterMapping : ClassMap<Character>
{
public CharacterMapping()
{
Id(x => x.Id);
References(x => x.ApplicationUser).Cascade.All();
}
}
Cependant, chaque fois que je tente de créer et enregistrer un personnage, je reçois: Impossible de déterminer le type pour: SWDB.Domain.RP.Character, SWDB.Domain, pour les colonnes: NHibernate.Mapping. colonne (id)
J'ai bats toute la journée - je donne :(toute aide est appréciée ...
Merci!
merci! –