C# NHibernate.AspNet.Identity FluentNhibernate-如何将自定义对象添加到ApplicationUSer?
我对Nhibernate非常、非常陌生,我正在学习(痛苦地) 我正在尝试将NHibernate与Asp.NETIdentity 2.0结合使用,并设置自己的应用商店。然而,我有一些问题- 虽然我了解实体之间的映射,但似乎无法在实体之间创建相关映射。这是我的。ApplicationUser类和设置,类似于: 这是我的主要配置部分:C# NHibernate.AspNet.Identity FluentNhibernate-如何将自定义对象添加到ApplicationUSer?,c#,nhibernate,fluent-nhibernate,asp.net-identity,fluent-nhibernate-mapping,C#,Nhibernate,Fluent Nhibernate,Asp.net Identity,Fluent Nhibernate Mapping,我对Nhibernate非常、非常陌生,我正在学习(痛苦地) 我正在尝试将NHibernate与Asp.NETIdentity 2.0结合使用,并设置自己的应用商店。然而,我有一些问题- 虽然我了解实体之间的映射,但似乎无法在实体之间创建相关映射。这是我的。ApplicationUser类和设置,类似于: 这是我的主要配置部分: var configuration = Fluently.Configure() .Database( MsSq
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();
var-configuration=fluntly.Configure()
.数据库(
MsSqlConfiguration.MsSql2012.ConnectionString(
“server=localhost;database=SWDB;trusted_connection=true;”)
.Mappings(x=>x.FluentMappings.AddFromAssemblyOf())
.ExposeConfiguration(cfg=>
{
SetProperty(“当前会话上下文类”、“web”);
cfg.AddDeserializedMapping(
MappingHelper.GetIdentityMappings(myEntities),null;
新建SchemaExport(cfg).Create(false,true);
}).BuildConfiguration();
最后,映射:
public class ApplicationUserMapping : SubclassMap<ApplicationUser>
{
public ApplicationUserMapping()
{
HasMany(x => x.Characters).Inverse().Cascade.All();
}
}
public类ApplicationUserMapping:子类映射
{
公共ApplicationUserMapping()
{
有许多(x=>x.Characters).Inverse().Cascade.All();
}
}
及
公共类字符映射:类映射
{
公共字符映射()
{
Id(x=>x.Id);
引用(x=>x.ApplicationUser.Cascade.All();
}
}
但是,每当我尝试创建和保存一个字符时,我得到:无法确定以下列的类型:SWDB.Domain.RP.character,SWDB.Domain:NHibernate.Mapping.Column(id)
我已经为此奋斗了一整天-我放弃:(任何帮助都是感激的
谢谢!您的Id是标识不支持的Guid。请手动指定生成器
public class CharacterMapping : ClassMap<Character>
{
public CharacterMapping()
{
Id(x => x.Id).GeneratedBy.GuidComb();
References(x => x.ApplicationUser).Cascade.All();
}
}
公共类字符映射:类映射
{
公共字符映射()
{
Id(x=>x.Id).GeneratedBy.GuidComb();
引用(x=>x.ApplicationUser.Cascade.All();
}
}
public class ApplicationUserMapping : SubclassMap<ApplicationUser>
{
public ApplicationUserMapping()
{
HasMany(x => x.Characters).Inverse().Cascade.All();
}
}
public class CharacterMapping : ClassMap<Character>
{
public CharacterMapping()
{
Id(x => x.Id);
References(x => x.ApplicationUser).Cascade.All();
}
}
public class CharacterMapping : ClassMap<Character>
{
public CharacterMapping()
{
Id(x => x.Id).GeneratedBy.GuidComb();
References(x => x.ApplicationUser).Cascade.All();
}
}