public AutoPersistenceModel Generate() { var mappings = new AutoPersistenceModel(); mappings.AddEntityAssembly(typeof (Class1).Assembly).Where(GetAutoMappingFilter); mappings.Conventions.Setup(GetConventions()); mappings.Setup(GetSetup()); mappings.UseOverridesFromAssemblyOf<AutoPersistenceModelGenerator>(); mappings.Override<Idea>(i => i.Map(m => m.Text).CustomSqlType("TEXT")); mappings.Override<Comment>(c => c.Map(m => m.Text).CustomSqlType("TEXT")); return mappings; }
public void Alter(AutoPersistenceModel model) { model.Override <Document>(mapping => { // todo: study the gains on using HiLo // mapping.Id(x => x.Id).GeneratedBy.HiLo("100"); mapping.Map(x => x.Type).Index("idx_document_type"); mapping.Map(x => x.Content).Length(4001); foreach (var index in _hasDocumentsIndexes) { var type = typeof(HasManyAlteration <>).MakeGenericType(index); var alteration = (IAlteration)Activator.CreateInstance(type); alteration.Override(mapping); } foreach (var index in _hasDocumentIndexes) { var type = typeof(HasOneAlteration <>).MakeGenericType(index); var alteration = (IAlteration)Activator.CreateInstance(type); alteration.Override(mapping); } }); }
protected virtual void AdditionalModelConfig(AutoPersistenceModel model) { // 29.12.2011 - Who would have thought that apparently only know I managed to surpass 4000 chars. // seems crazy but anyways, here's a fix for NH cutting off my text model.Override<Content>( a => a.Map(c => c.Body).Length(4001).CustomSqlType("nvarchar(MAX)")); }
public AutoPersistenceModel Generate() { var mappings = new AutoPersistenceModel(); mappings.AddEntityAssembly(typeof(Soul).Assembly).Where(GetAutoMappingFilter); mappings.Conventions.Setup(GetConventions()); mappings.Setup(GetSetup()); mappings.IgnoreBase<Entity>(); mappings.IgnoreBase(typeof(EntityWithTypedId<>)); mappings.UseOverridesFromAssemblyOf<AutoPersistenceModelGenerator>(); // Membershipprovider Automappings mappings.AddEntityAssembly(typeof(Shaml.Membership.Core.User).Assembly).Where(GetAutoMappingFilter); mappings.Override<Shaml.Membership.Core.User>(map => Shaml.Membership.Data.Overrides.UserOverride(map)); mappings.Override<Shaml.Membership.Core.Role>(map => Shaml.Membership.Data.Overrides.RoleOverride(map)); mappings.Override<Shaml.Membership.Core.ProfileData>(map => Shaml.Membership.Data.Overrides.ProfileDataOverride(map)); mappings.Override<Shaml.Membership.Core.Session>(map => Shaml.Membership.Data.Overrides.SessionOverride(map)); return mappings; }
public void Alter(AutoPersistenceModel model) { model.Override <ContentItemRecord>(mapping => { foreach (var descriptor in _recordDescriptors.Where(d => Utility.IsPartRecord(d.Type))) { var type = typeof(Alteration <,>).MakeGenericType(typeof(ContentItemRecord), descriptor.Type); var alteration = (IAlteration <ContentItemRecord>)Activator.CreateInstance(type); alteration.Override(mapping); } mapping.IgnoreProperty(x => x.Infoset); }); model.Override <ContentItemVersionRecord>(mapping => { foreach (var descriptor in _recordDescriptors.Where(d => Utility.IsPartVersionRecord(d.Type))) { var type = typeof(Alteration <,>).MakeGenericType(typeof(ContentItemVersionRecord), descriptor.Type); var alteration = (IAlteration <ContentItemVersionRecord>)Activator.CreateInstance(type); alteration.Override(mapping); } mapping.IgnoreProperty(x => x.Infoset); }); }
/// <summary> /// Alter the model /// </summary> /// <remarks> /// Finds all types in the assembly (passed in the constructor) that implement IAutoMappingOverride<T>, then /// creates an AutoMapping<T> and applies the override to it. /// </remarks> /// <param name="model">AutoPersistenceModel instance to alter</param> public void Alter(AutoPersistenceModel model) { // find all types deriving from IAutoMappingOverride<T> var types = from type in assembly.GetExportedTypes() where !type.IsAbstract let entity = (from interfaceType in type.GetInterfaces() where interfaceType.IsGenericType && interfaceType.GetGenericTypeDefinition() == typeof(IAutoMappingOverride <>) select interfaceType.GetGenericArguments()[0]).FirstOrDefault() where entity != null select type; foreach (var type in types) { model.Override(type); } }
/// <summary> /// Alter the model /// </summary> /// <remarks> /// Finds all types in the assembly (passed in the constructor) that implement IAutoMappingOverride<T>, then /// creates an AutoMapping<T> and applies the override to it. /// </remarks> /// <param name="model">AutoPersistenceModel instance to alter</param> public void Alter(AutoPersistenceModel model) { // find all types deriving from IAutoMappingOverride<T> var types = from type in assembly.GetExportedTypes() where !type.IsAbstract let entity = (from interfaceType in type.GetInterfaces() where interfaceType.IsGenericType && interfaceType.GetGenericTypeDefinition() == typeof(IAutoMappingOverride<>) select interfaceType.GetGenericArguments()[0]).FirstOrDefault() where entity != null select type; foreach (var type in types) { model.Override(type); } }
public void Created(FluentConfiguration cfg, AutoPersistenceModel defaultModel) { defaultModel.Override <AssetRecord>(mapping => mapping.IgnoreProperty(x => x.Infoset)); defaultModel.Override <TaskRecord>(mapping => mapping.References(x => x.Job, "JobId")); defaultModel.Override <JobRecord>(mapping => mapping.HasMany(x => x.Tasks).KeyColumn("JobId")); }
public void Alter(AutoPersistenceModel model) { model.Override <User>(mapping => mapping.IgnoreProperty(x => x.Message)); model.Override <User>(mapping => mapping.IgnoreProperty(x => x.Status)); }
public void Created(FluentConfiguration cfg, AutoPersistenceModel defaultModel) { defaultModel.Override<AssetRecord>(mapping => mapping.IgnoreProperty(x => x.Infoset)); defaultModel.Override<TaskRecord>(mapping => mapping.References(x => x.Job, "JobId")); defaultModel.Override<JobRecord>(mapping => mapping.HasMany(x => x.Tasks).KeyColumn("JobId")); }