public SuppliersMapper() { Table("Suppliers"); OptimisticLock.None(); DynamicUpdate(); Id(it => it.SupplierID, "SupplierID").GeneratedBy.Native("Suppliers_SEQ").CustomSqlType("int"); Map(it => it.Address, "Address").Nullable().CustomSqlType("nvarchar(60)").Length(60); Map(it => it.City, "City").Nullable().CustomSqlType("nvarchar(15)").Length(15); Map(it => it.CompanyName, "CompanyName").Not.Nullable().CustomSqlType("nvarchar(40)").Length(40); Map(it => it.ContactName, "ContactName").Nullable().CustomSqlType("nvarchar(30)").Length(30); Map(it => it.ContactTitle, "ContactTitle").Nullable().CustomSqlType("nvarchar(30)").Length(30); Map(it => it.Country, "Country").Nullable().CustomSqlType("nvarchar(15)").Length(15); Map(it => it.Fax, "Fax").Nullable().CustomSqlType("nvarchar(24)").Length(24); Map(it => it.HomePage, "HomePage").Nullable().CustomSqlType("ntext").Length(1073741823); Map(it => it.Phone, "Phone").Nullable().CustomSqlType("nvarchar(24)").Length(24); Map(it => it.PostalCode, "PostalCode").Nullable().CustomSqlType("nvarchar(10)").Length(10); HasMany(x => x.Productss) .KeyColumns.Add("SupplierID") .ForeignKeyConstraintName("FK_Products_Suppliers") .Inverse() .Cascade.Delete() .LazyLoad() .Fetch.Select() .AsBag(); Map(it => it.Region, "Region").Nullable().CustomSqlType("nvarchar(15)").Length(15); this.CompleteMappings(); }
/// <summary>Initializes a new instance of the <see cref="NodeRelationTagMap"/> class.</summary> public NodeRelationTagMap() { Table("NodeRelationTag"); OptimisticLock.None(); Id(x => x.Id) .Access.CamelCaseField(Prefix.Underscore) .Column("Id") .GeneratedBy.Custom <GuidCombUriGenerator>(); Map(x => x.Name).Access.CamelCaseField(Prefix.Underscore) .Not.Nullable() .Length(64) .Index(this.GenerateIndexName(x => x.Name)); Map(x => x.Value).Access.CamelCaseField(Prefix.Underscore) .Index(this.GenerateIndexName(x => x.Value)); References(x => x.NodeRelation) .Access.CamelCaseField(Prefix.Underscore) .Cascade.Merge() .Not.Nullable() .Fetch.Select() .LazyLoad() .Column("NodeRelationId") .Index(this.GenerateIndexName(x => x.NodeRelation)); AdditionalMappingInfo(); }
public StudentMapper() { Table("STUDENT"); OptimisticLock.None(); DynamicUpdate(); Id(it => it.StudentId, "STUDENT_ID").GeneratedBy.Native("STUDENT_SEQ").Index("PK_STUDENT").CustomSqlType("int"); HasManyToMany(x => x.Classrooms) .ParentKeyColumns.Add("STUDENT_ID", p => p.UniqueKey("PK_STUDENT_CLASSROOM")) .Table("STUDENT_CLASSROOM") .ChildKeyColumns.Add("CLASSROOM_ID", p => p.UniqueKey("PK_STUDENT_CLASSROOM")) .ForeignKeyConstraintNames("FK_STUDENT_TO_STUDENT_CLASSROOM", "FK_CLASSROOM_TO_STUDENT_CLASSROOM") //.LazyLoad() //.Fetch.Select() .Not.LazyLoad() .Fetch.Join() .AsBag(); References(x => x.Language) .ForeignKey("FK_LANGUAGE_TO_STUDENT") .Columns("LANGUAGE_ID") .Fetch.Join() .Cascade.None(); Map(it => it.FullName, "FULL_NAME").Not.Nullable().CustomSqlType("VARCHAR(300)"); this.CompleteMappings(); }
/// <summary>Initializes a new instance of the <see cref="NodeVersionStatusHistoryMap"/> class.</summary> public NodeVersionStatusHistoryMap() { Table("NodeVersionStatusHistory"); OptimisticLock.None(); Id(x => x.Id) .Access.CamelCaseField(Prefix.Underscore) .Column("Id") .GeneratedBy.Custom <GuidCombUriGenerator>(); Map(x => x.Date).Access.CamelCaseField(Prefix.Underscore) .Not.Nullable() .Index(this.GenerateIndexName(x => x.Date)); References(x => x.NodeVersion) .Access.CamelCaseField(Prefix.Underscore) .Cascade.Merge() .Not.Nullable() .Fetch.Select() .LazyLoad() // Reverse navigator so lazy-load .Column("NodeVersionId") .Index(this.GenerateIndexName(x => x.NodeVersionStatusType)); References(x => x.NodeVersionStatusType) .Access.CamelCaseField(Prefix.Underscore) .Cascade.Merge() .Not.Nullable() .Fetch.Select() .Column("NodeVersionStatusTypeId") .Index(this.GenerateIndexName(x => x.NodeVersionStatusType)); AdditionalMappingInfo(); }
public ProductsMapper() { Table("Products"); OptimisticLock.None(); DynamicUpdate(); Id(it => it.ProductID, "ProductID").GeneratedBy.Native("Products_SEQ").CustomSqlType("int"); References(x => x.Categories) .ForeignKey("FK_Products_Categories") .Columns("CategoryID") .Fetch.Join() .Cascade.None(); Map(it => it.Discontinued, "Discontinued").Not.Nullable().CustomSqlType("bit"); HasMany(x => x.OrderDetailss) .KeyColumns.Add("ProductID") .ForeignKeyConstraintName("FK_Order_Details_Products") .Inverse() .Cascade.Delete() .LazyLoad() .Fetch.Select() .AsBag(); Map(it => it.ProductName, "ProductName").Not.Nullable().CustomSqlType("nvarchar(40)").Length(40); Map(it => it.QuantityPerUnit, "QuantityPerUnit").Nullable().CustomSqlType("nvarchar(20)").Length(20); Map(it => it.ReorderLevel, "ReorderLevel").Nullable().CustomSqlType("smallint"); References(x => x.Suppliers) .ForeignKey("FK_Products_Suppliers") .Columns("SupplierID") .Fetch.Join() .Cascade.None(); Map(it => it.UnitPrice, "UnitPrice").Nullable().CustomSqlType("money"); Map(it => it.UnitsInStock, "UnitsInStock").Nullable().CustomSqlType("smallint"); Map(it => it.UnitsOnOrder, "UnitsOnOrder").Nullable().CustomSqlType("smallint"); this.CompleteMappings(); }
/// <summary>Initializes a new instance of the <see cref="AttributeIntegerValueMap"/> class.</summary> public AttributeIntegerValueMap() { Table("AttributeIntegerValue"); OptimisticLock.None(); Id(x => x.Id) .Access.CamelCaseField(Prefix.Underscore) .Column("Id") .GeneratedBy.Custom <GuidCombUriGenerator>(); Map(x => x.Value).Access.CamelCaseField(Prefix.Underscore) .Index(this.GenerateIndexName(x => x.Value)); Map(x => x.ValueKey).Access.CamelCaseField(Prefix.Underscore) .Not.Nullable() .Index(this.GenerateIndexName(x => x.ValueKey)); References(x => x.Attribute) .Access.CamelCaseField(Prefix.Underscore) .Cascade.Merge() .Fetch.Select() .Not.Nullable() .Column("AttributeId") .Index(this.GenerateIndexName(x => x.Attribute)); References(x => x.Locale) .Access.CamelCaseField(Prefix.Underscore) .Cascade.Merge() // TODO: This should be SaveUpdate() but need to fix mapping code; using Merge doesn't fire if cascade is SaveOrUpdate .Fetch.Select() .Not.Nullable() .Column("LocaleId") .Index(this.GenerateIndexName(x => x.Locale)); AdditionalMappingInfo(); }
public CustomersMapper() { Table("Customers"); OptimisticLock.None(); DynamicUpdate(); Id(it => it.CustomerID, "CustomerID").GeneratedBy.Assigned().CustomSqlType("nchar(5)").Length(5); Map(it => it.Address, "Address").Nullable().CustomSqlType("nvarchar(60)").Length(60); Map(it => it.City, "City").Nullable().CustomSqlType("nvarchar(15)").Length(15); Map(it => it.CompanyName, "CompanyName").Not.Nullable().CustomSqlType("nvarchar(40)").Length(40); Map(it => it.ContactName, "ContactName").Nullable().CustomSqlType("nvarchar(30)").Length(30); Map(it => it.ContactTitle, "ContactTitle").Nullable().CustomSqlType("nvarchar(30)").Length(30); Map(it => it.Country, "Country").Nullable().CustomSqlType("nvarchar(15)").Length(15); Map(it => it.Fax, "Fax").Nullable().CustomSqlType("nvarchar(24)").Length(24); HasMany(x => x.Orderss) .KeyColumns.Add("CustomerID") .ForeignKeyConstraintName("FK_Orders_Customers") .Inverse() .Cascade.Delete() .LazyLoad() .Fetch.Select() .AsBag(); Map(it => it.Phone, "Phone").Nullable().CustomSqlType("nvarchar(24)").Length(24); Map(it => it.PostalCode, "PostalCode").Nullable().CustomSqlType("nvarchar(10)").Length(10); Map(it => it.Region, "Region").Nullable().CustomSqlType("nvarchar(15)").Length(15); this.CompleteMappings(); }
public CompanyMap() { Table("[dbo].[companies]"); OptimisticLock.None(); LazyLoad(); Id(x => x.Id).GeneratedBy.Identity(); Map(x => x.Name); Map(x => x.Category); Map(x => x.Symbol); }
/// <summary>Initializes a new instance of the <see cref="NodeVersionStatusTypeMap"/> class.</summary> public NodeVersionStatusTypeMap() { Table("NodeVersionStatusType"); OptimisticLock.None(); Id(x => x.Id) .Access.CamelCaseField(Prefix.Underscore) .Column("Id") .GeneratedBy.Custom <GuidCombUriGenerator>(); //NaturalId().Property(x => x.Name); Map(x => x.IsSystem).Access.CamelCaseField(Prefix.Underscore).Not.Nullable(); Map(x => x.Name).Access.CamelCaseField(Prefix.Underscore); Map(x => x.Alias).Access.CamelCaseField(Prefix.Underscore) .Length(16) .Unique() .Not.Nullable() .Index(this.GenerateIndexName(x => x.Alias)); HasMany(x => x.NodeVersionSchedules) .Access.CamelCaseField(Prefix.Underscore) .Cascade.MergeSaveAllDeleteOrphan() .Fetch.Select() // This is a select, not a join, because it's common that this type (NodeVersionStatusType) is included in other queries and we don't want that to cascade to a left outer join including NodeVersionSchedules .AsSet() .Inverse() .LazyLoad() // Reverse navigator, so lazy-load //.KeyColumns.Add("NodeVersionStatusTypeId"); .Key(x => { x.Column("NodeVersionStatusTypeId"); x.ForeignKey(this.GenerateFkName(y => y.NodeVersionSchedules)); }); HasMany(x => x.NodeVersionStatuses) .Access.CamelCaseField(Prefix.Underscore) .Cascade.MergeSaveAllDeleteOrphan() .Fetch.Select() // This is a select, not a join, because it's common that this type (NodeVersionStatusType) is included in other queries and we don't want that to cascade to a left outer join including NodeVersionStatuses .AsSet() .Inverse() .LazyLoad() // Reverse navigator, so lazy-load //.KeyColumns.Add("NodeVersionStatusTypeId"); .Key(x => { x.Column("NodeVersionStatusTypeId"); x.ForeignKey(this.GenerateFkName(y => y.NodeVersionStatuses)); }); AdditionalMappingInfo(); }
public ContatoMapper() { Table("Contato"); OptimisticLock.None(); DynamicUpdate(); Id(it => it.Id, "Id").GeneratedBy.Native("CLASSROOM_SEQ").Index("PK_CLASSROOM").CustomSqlType("int"); Map(it => it.Nome, "Nome").Not.Nullable().CustomSqlType("VARCHAR(100)"); Map(it => it.Telefone, "Telefone").Not.Nullable().CustomSqlType("VARCHAR(Max)"); Map(it => it.Email, "Email").CustomSqlType("VARCHAR(Max)"); Map(it => it.Endereco, "Endereco").CustomSqlType("VARCHAR(250)"); Map(it => it.Empresa, "Empresa").CustomSqlType("VARCHAR(250)"); this.CompleteMappings(); }
public OrderDetailsMapper() { Table("OrderDetails"); OptimisticLock.None(); DynamicUpdate(); CompositeId() .KeyReference(it => it.Orders, "OrderID") .KeyReference(it => it.Products, "ProductID"); Map(it => it.Discount, "Discount").Not.Nullable().CustomSqlType("real"); Map(it => it.Quantity, "Quantity").Not.Nullable().CustomSqlType("smallint"); Map(it => it.UnitPrice, "UnitPrice").Not.Nullable().CustomSqlType("money"); this.CompleteMappings(); }
public EmployeesMapper() { Table("Employees"); OptimisticLock.None(); DynamicUpdate(); Id(it => it.EmployeeID, "EmployeeID").GeneratedBy.Native("Employees_SEQ").CustomSqlType("int"); Map(it => it.Address, "Address").Nullable().CustomSqlType("nvarchar(60)").Length(60); Map(it => it.BirthDate, "BirthDate").Nullable().CustomSqlType("datetime"); HasMany(x => x.Child) .KeyColumns.Add("ReportsTo") .ForeignKeyConstraintName("FK_Employees_Employees") .Inverse() .Cascade.Delete() .LazyLoad() .Fetch.Select() .AsBag(); Map(it => it.City, "City").Nullable().CustomSqlType("nvarchar(15)").Length(15); Map(it => it.Country, "Country").Nullable().CustomSqlType("nvarchar(15)").Length(15); Map(it => it.Extension, "Extension").Nullable().CustomSqlType("nvarchar(4)").Length(4); Map(it => it.FirstName, "FirstName").Not.Nullable().CustomSqlType("nvarchar(10)").Length(10); Map(it => it.HireDate, "HireDate").Nullable().CustomSqlType("datetime"); Map(it => it.HomePhone, "HomePhone").Nullable().CustomSqlType("nvarchar(24)").Length(24); Map(it => it.LastName, "LastName").Not.Nullable().CustomSqlType("nvarchar(20)").Length(20); Map(it => it.Notes, "Notes").Nullable().CustomSqlType("ntext").Length(1073741823); HasMany(x => x.Orderss) .KeyColumns.Add("EmployeeID") .ForeignKeyConstraintName("FK_Orders_Employees") .Inverse() .Cascade.Delete() .LazyLoad() .Fetch.Select() .AsBag(); References(x => x.Parent) .ForeignKey("FK_Employees_Employees") .Columns("ReportsTo") .Fetch.Join() .Cascade.None(); Map(it => it.Photo, "Photo").Nullable().CustomSqlType("image"); Map(it => it.PhotoPath, "PhotoPath").Nullable().CustomSqlType("nvarchar(255)").Length(255); Map(it => it.PostalCode, "PostalCode").Nullable().CustomSqlType("nvarchar(10)").Length(10); Map(it => it.Region, "Region").Nullable().CustomSqlType("nvarchar(15)").Length(15); Map(it => it.Title, "Title").Nullable().CustomSqlType("nvarchar(30)").Length(30); Map(it => it.TitleOfCourtesy, "TitleOfCourtesy").Nullable().CustomSqlType("nvarchar(25)").Length(25); this.CompleteMappings(); }
public OrdersMapper() { Table("Orders"); OptimisticLock.None(); DynamicUpdate(); Id(it => it.OrderID, "OrderID").GeneratedBy.Native("Orders_SEQ").CustomSqlType("int"); References(x => x.Customers) .ForeignKey("FK_Orders_Customers") .Columns("CustomerID") .Fetch.Join() .Cascade.None(); References(x => x.Employees) .ForeignKey("FK_Orders_Employees") .Columns("EmployeeID") .Fetch.Join() .Cascade.None(); Map(it => it.Freight, "Freight").Nullable().CustomSqlType("money"); Map(it => it.OrderDate, "OrderDate").Nullable().CustomSqlType("datetime"); HasMany(x => x.OrderDetailss) .KeyColumns.Add("OrderID") .ForeignKeyConstraintName("FK_Order_Details_Orders") .Inverse() .Cascade.Delete() .LazyLoad() .Fetch.Select() .AsBag(); Map(it => it.RequiredDate, "RequiredDate").Nullable().CustomSqlType("datetime"); Map(it => it.ShipAddress, "ShipAddress").Nullable().CustomSqlType("nvarchar(60)").Length(60); Map(it => it.ShipCity, "ShipCity").Nullable().CustomSqlType("nvarchar(15)").Length(15); Map(it => it.ShipCountry, "ShipCountry").Nullable().CustomSqlType("nvarchar(15)").Length(15); Map(it => it.ShipName, "ShipName").Nullable().CustomSqlType("nvarchar(40)").Length(40); Map(it => it.ShippedDate, "ShippedDate").Nullable().CustomSqlType("datetime"); References(x => x.Shippers) .ForeignKey("FK_Orders_Shippers") .Columns("ShipVia") .Fetch.Join() .Cascade.None(); Map(it => it.ShipPostalCode, "ShipPostalCode").Nullable().CustomSqlType("nvarchar(10)").Length(10); Map(it => it.ShipRegion, "ShipRegion").Nullable().CustomSqlType("nvarchar(15)").Length(15); this.CompleteMappings(); }
public ClassroomMapper() { Table("CLASSROOM"); OptimisticLock.None(); DynamicUpdate(); Id(it => it.ClassroomId, "CLASSROOM_ID").GeneratedBy.Native("CLASSROOM_SEQ").Index("PK_CLASSROOM").CustomSqlType("int"); HasManyToMany(x => x.Students) .ParentKeyColumns.Add("CLASSROOM_ID") .Table("STUDENT_CLASSROOM") .ChildKeyColumns.Add("STUDENT_ID") .ForeignKeyConstraintNames("FK_CLASSROOM_TO_STUDENT_CLASSROOM", "FK_STUDENT_TO_STUDENT_CLASSROOM") .LazyLoad() .Fetch.Select() .AsBag(); Map(it => it.Name, "NAME").Not.Nullable().CustomSqlType("VARCHAR(100)"); this.CompleteMappings(); }
public LanguageMapper() { Table("LANGUAGE"); OptimisticLock.None(); DynamicUpdate(); Id(it => it.LanguageId, "LANGUAGE_ID").CustomSqlType("CHAR(2)").Index("PK_STUDENT"); HasMany(x => x.Students) .KeyColumns.Add("LANGUAGE_ID") .ForeignKeyConstraintName("FK_LANGUAGE_TO_STUDENT") .Inverse() .Cascade.Delete() .LazyLoad() .Fetch.Select() .AsBag(); Map(it => it.Name, "NAME").Not.Nullable().CustomSqlType("VARCHAR(300)"); this.CompleteMappings(); }
/// <summary>Initializes a new instance of the <see cref="NodeRelationTypeMap"/> class.</summary> public NodeRelationTypeMap() { Table("NodeRelationType"); OptimisticLock.None(); Id(x => x.Id) .Access.CamelCaseField(Prefix.Underscore) .Column("Id") .GeneratedBy.Custom <GuidCombUriGenerator>(); Map(x => x.Alias) .Not.Nullable() .Unique() .Length(64) .Index(this.GenerateIndexName(x => x.Alias)) .Access.CamelCaseField(Prefix.Underscore); //NaturalId().Property(x => x.Alias); //Map(x => x.Alias).Access.CamelCaseField(Prefix.Underscore); Map(x => x.Description).CustomType("StringClob").Access.CamelCaseField(Prefix.Underscore); Map(x => x.Name).Access.CamelCaseField(Prefix.Underscore); HasMany(x => x.NodeRelations) .Access.CamelCaseField(Prefix.Underscore) //.Cascade.MergeSaveAllDeleteOrphan() .Cascade.All() .Fetch.Select() .AsSet() .Inverse() .LazyLoad() // Reverse navigator, so lazy-load //.KeyColumns.Add("NodeRelationTypeId") .Key(x => { x.Column("NodeRelationTypeId"); x.ForeignKey(this.GenerateFkName(y => y.NodeRelations)); }) .Cache.IncludeAll().ReadWrite(); AdditionalMappingInfo(); }
public ShippersMapper() { Table("Shippers"); OptimisticLock.None(); DynamicUpdate(); Id(it => it.ShipperID, "ShipperID").GeneratedBy.Native("Shippers_SEQ").CustomSqlType("int"); Map(it => it.CompanyName, "CompanyName").Not.Nullable().CustomSqlType("nvarchar(40)").Length(40); HasMany(x => x.Orderss) .KeyColumns.Add("ShipVia") .ForeignKeyConstraintName("FK_Orders_Shippers") .Inverse() .Cascade.Delete() .LazyLoad() .Fetch.Select() .AsBag(); Map(it => it.Phone, "Phone").Nullable().CustomSqlType("nvarchar(24)").Length(24); this.CompleteMappings(); }
public CategoriesMapper() { Table("Categories"); OptimisticLock.None(); DynamicUpdate(); Id(it => it.CategoryID, "CategoryID").GeneratedBy.Native("Categories_SEQ").CustomSqlType("int"); Map(it => it.CategoryName, "CategoryName").Not.Nullable().CustomSqlType("nvarchar(15)").Length(15); Map(it => it.Description, "Description").Nullable().CustomSqlType("ntext").Length(1073741823); Map(it => it.Picture, "Picture").Nullable().CustomSqlType("image"); HasMany(x => x.Productss) .KeyColumns.Add("CategoryID") .ForeignKeyConstraintName("FK_Products_Categories") .Inverse() .Cascade.Delete() .LazyLoad() .Fetch.Select() .AsBag(); this.CompleteMappings(); }
/// <summary>Initializes a new instance of the <see cref="AttributeTypeMap"/> class.</summary> public AttributeTypeMap() { Table("AttributeType"); OptimisticLock.None(); Id(x => x.Id) .Access.CamelCaseField(Prefix.Underscore) .Column("Id") .GeneratedBy.Custom <GuidCombUriGenerator>(); Map(x => x.Alias) .Access.CamelCaseField(Prefix.Underscore) .Not.Nullable() .Index(this.GenerateIndexName(x => x.Alias)); Map(x => x.Description).CustomType("StringClob").Access.CamelCaseField(Prefix.Underscore); Map(x => x.Name).Access.CamelCaseField(Prefix.Underscore); Map(x => x.PersistenceTypeProvider).Access.CamelCaseField(Prefix.Underscore); Map(x => x.RenderTypeProvider).Access.CamelCaseField(Prefix.Underscore); Map(x => x.XmlConfiguration).CustomType("StringClob").Access.CamelCaseField(Prefix.Underscore); //NOTE: This was commented out for some reason, i had to uncomment it so that when deleting an Attribute type (data type) // the changes cascade to the entity... without this when you reload the entity there will ben an exception, plus i'm pretty // sure this makes sense here. SD HasMany(x => x.AttributeDefinitions) .Access.CamelCaseField(Prefix.Underscore) .Cascade.DeleteOrphan() // APN changed to delete orphan so saving an AttributeType only causes deletions to AttributeDefinitions, not saves .Fetch.Join() .AsSet() .Inverse() .LazyLoad() // Reverse navigator so lazy-load //.KeyColumns.Add("AttributeTypeId"); .Key(x => { x.Column("AttributeTypeId"); x.ForeignKey(this.GenerateFkName(y => y.AttributeDefinitions)); }); AdditionalMappingInfo(); }
/// <summary>Initializes a new instance of the <see cref="NodeRelationCacheMap"/> class.</summary> public NodeRelationCacheMap() { Table("NodeRelationCache"); OptimisticLock.None(); Id(x => x.Id) .Access.CamelCaseField(Prefix.Underscore) .Column("Id") .GeneratedBy.Custom <GuidCombUriGenerator>(); Map(x => x.DistanceFromOriginal).Access.CamelCaseField(Prefix.Underscore); References(x => x.EndNode) .Access.CamelCaseField(Prefix.Underscore) .Cascade.Merge() .Fetch.Select() .Not.Nullable() .Column("EndNodeId") .Index(this.GenerateIndexName(x => x.EndNode)); References(x => x.NodeRelation) .Access.CamelCaseField(Prefix.Underscore) .Cascade.Merge() .Fetch.Select() .Not.Nullable() .Column("NodeRelationId") .Index(this.GenerateIndexName(x => x.NodeRelation)); References(x => x.StartNode) .Access.CamelCaseField(Prefix.Underscore) .Cascade.Merge() .Fetch.Select() .Not.Nullable() .Column("StartNodeId") .Index(this.GenerateIndexName(x => x.StartNode)); AdditionalMappingInfo(); }
/// <summary>Initializes a new instance of the <see cref="AttributeStringValueMap"/> class.</summary> public AttributeStringValueMap() { Table("AttributeStringValue"); OptimisticLock.None(); Id(x => x.Id) .Access.CamelCaseField(Prefix.Underscore) .Column("Id") .GeneratedBy.Custom <GuidCombUriGenerator>(); Map(x => x.Value).Access.CamelCaseField(Prefix.Underscore) .Index(this.GenerateIndexName(x => x.Value)); Map(x => x.ValueKey).Access.CamelCaseField(Prefix.Underscore) .Not.Nullable() .Index(this.GenerateIndexName(x => x.ValueKey)); References(x => x.Attribute) .Access.CamelCaseField(Prefix.Underscore) .Cascade.Merge() .Fetch.Select() .Not.Nullable() .Index(this.GenerateIndexName(x => x.Attribute)) .Column("AttributeId"); References(x => x.Locale) .Access.CamelCaseField(Prefix.Underscore) .Cascade.Merge() .Fetch.Select() .Not.Nullable() .Index(this.GenerateIndexName(x => x.Locale)) .Column("LocaleId"); AdditionalMappingInfo(); }
/// <summary>Initializes a new instance of the <see cref="AttributeSchemaDefinitionMap"/> class.</summary> public AttributeSchemaDefinitionMap() { OptimisticLock.None(); Id(x => x.Id) .Access.CamelCaseField(Prefix.Underscore) .Column("NodeId") .GeneratedBy.Foreign("Node") .Not.Nullable(); //HasOne(x => x.Node) // .Cascade.All() // .Access.CamelCaseField(Prefix.Underscore) // .ForeignKey(this.GenerateFkName(x => x.Node)) // .Fetch.Join() // .LazyLoad(Laziness.False); References(x => x.Node) .Access.Property() .Cascade.All() .Column("NodeId") .ReadOnly() .Fetch.Join() .LazyLoad(Laziness.False) .Not.Nullable().NotFound.Ignore() .ForeignKey(this.GenerateFkName(x => x.Node)); Map(x => x.Alias) .Access.Property() .Not.Nullable() .Length(64) .Index(this.GenerateIndexName(x => x.Alias)); //Map(x => x.Description).CustomType("StringClob").Access.CamelCaseField(Prefix.Underscore); Map(x => x.Name).Access.CamelCaseField(Prefix.Underscore); Map(x => x.SchemaType) .Access.CamelCaseField(Prefix.Underscore) .Length(100) .Not.Nullable() .Index(this.GenerateIndexName(x => x.SchemaType)); Map(x => x.XmlConfiguration) .CustomType("StringClob") .Access.CamelCaseField(Prefix.Underscore); HasMany(x => x.AttributeDefinitions) .Access.CamelCaseField(Prefix.Underscore) .Cascade.MergeSaveAllDeleteOrphan() .Fetch.Select().BatchSize(10) .AsSet() .Inverse() //.LazyLoad() .Key(x => { x.Column("AttributeSchemaDefinitionId"); x.ForeignKey(this.GenerateFkName(y => y.AttributeDefinitions)); }); HasMany(x => x.AttributeDefinitionGroups) .Access.CamelCaseField(Prefix.Underscore) .Cascade.MergeSaveAllDeleteOrphan() .Fetch.Select().BatchSize(10) .AsSet() .Inverse() .LazyLoad() .Key(x => { x.Column("AttributeSchemaDefinitionId"); x.ForeignKey(this.GenerateFkName(y => y.AttributeDefinitionGroups)); }); //NOTE: added this mapping so that when you delete a schema all of the Nodes that reference the Schema as their scema. SD. HasMany(x => x.ReferencedNodes) .Access.CamelCaseField(Prefix.Underscore) .Cascade.Delete() .Fetch.Select().LazyLoad() .AsSet() .Inverse() .Key(x => { x.Column("AttributeSchemaDefinition_id"); x.ForeignKey(this.GenerateFkName(y => y.ReferencedNodes)); }); //Key(x => //{ // x.Column("NodeId"); // x.ForeignKey(this.GenerateFkName<AttributeSchemaDefinition, Node>()); //}); AdditionalMappingInfo(); }
/// <summary>Initializes a new instance of the <see cref="AttributeDefinitionMap"/> class.</summary> public AttributeDefinitionMap() { Table("AttributeDefinition"); OptimisticLock.None(); Id(x => x.Id) .Access.CamelCaseField(Prefix.Underscore) .Column("Id") .GeneratedBy.Custom <GuidCombUriGenerator>(); Map(x => x.Alias) .Access.CamelCaseField(Prefix.Underscore) .Not.Nullable() .Length(64) .Index(this.GenerateIndexName(x => x.Alias)); Map(x => x.Description).CustomType("StringClob").Access.CamelCaseField(Prefix.Underscore); Map(x => x.Name).Access.CamelCaseField(Prefix.Underscore) .Length(128); Map(x => x.XmlConfiguration).CustomType("StringClob").Access.CamelCaseField(Prefix.Underscore); Map(x => x.Ordinal).Access.CamelCaseField(Prefix.Underscore) .Not.Nullable() .Default("0") .Index(this.GenerateIndexName(x => x.Ordinal)); References(x => x.AttributeDefinitionGroup) .Access.CamelCaseField(Prefix.Underscore) .Not.Nullable() .Cascade.Merge() // Used to be All, but deleting AttributeDefinition cascades to delete this too .Fetch.Join() .LazyLoad(Laziness.False) .Column("AttributeDefinitionGroupId") .Index(this.GenerateIndexName(x => x.AttributeDefinitionGroup)); HasMany(x => x.Attributes) .Access.CamelCaseField(Prefix.Underscore) .Cascade.MergeSaveAllDeleteOrphan() .Fetch.Select() .AsSet() .Inverse() .LazyLoad() // Reverse navigator so lazy-load //.KeyColumns.Add("AttributeDefinitionId"); .Key(x => { x.Column("AttributeDefinitionId"); x.ForeignKey(this.GenerateFkName(y => y.Attributes)); }); References(x => x.AttributeSchemaDefinition) .Access.CamelCaseField(Prefix.Underscore) .Cascade.Merge() // Used to be All, but deleting AttributeDefinition cascades to delete this too .Fetch.Select() .Not.Nullable() .Column("AttributeSchemaDefinitionId") .Index(this.GenerateIndexName(x => x.AttributeSchemaDefinition)); References(x => x.AttributeType) .Access.CamelCaseField(Prefix.Underscore) .Cascade.Merge() // Used to be All, but deleting AttributeDefinition cascades to delete this too .Fetch.Join() .LazyLoad(Laziness.False) .Not.Nullable() .Column("AttributeTypeId") .Index(this.GenerateIndexName(x => x.AttributeType)); AdditionalMappingInfo(); }
/// <summary>Initializes a new instance of the <see cref="LocaleMap"/> class.</summary> public LocaleMap() { Table("Locale"); OptimisticLock.None(); Id(x => x.Id) .Access.CamelCaseField(Prefix.Underscore) .Column("Id") .GeneratedBy.Custom <GuidCombUriGenerator>(); Map(x => x.Alias) .Access.CamelCaseField(Prefix.Underscore) .Not.Nullable() .Length(64) .Index(this.GenerateIndexName(x => x.Alias)); Map(x => x.LanguageIso).Column("LanguageISO").Access.CamelCaseField(Prefix.Underscore) .Not.Nullable() .Index(this.GenerateIndexName(x => x.LanguageIso)); Map(x => x.Name).Access.CamelCaseField(Prefix.Underscore); //HasMany(x => x.AttributeDateValues) // .Access.CamelCaseField(Prefix.Underscore) // .Cascade.MergeSaveAllDeleteOrphan() // .Fetch.Select() // .AsSet() // .Inverse() // .LazyLoad() // //.KeyColumns.Add("LocaleId"); // .Key(x => // { // x.Column("LocaleId"); // x.ForeignKey(this.GenerateFkName(y => y.AttributeDateValues)); // }); //HasMany(x => x.AttributeIntegerValues) // .Access.CamelCaseField(Prefix.Underscore) // .Cascade.MergeSaveAllDeleteOrphan() // .Fetch.Select() // .AsSet() // .Inverse() // .LazyLoad() // //.KeyColumns.Add("LocaleId"); // .Key(x => // { // x.Column("LocaleId"); // x.ForeignKey(this.GenerateFkName(y => y.AttributeIntegerValues)); // }); //HasMany(x => x.AttributeLongStringValues) // .Access.CamelCaseField(Prefix.Underscore) // .Cascade.MergeSaveAllDeleteOrphan() // .Fetch.Select() // .AsSet() // .Inverse() // .LazyLoad() // //.KeyColumns.Add("LocaleId"); // .Key(x => // { // x.Column("LocaleId"); // x.ForeignKey(this.GenerateFkName(y => y.AttributeLongStringValues)); // }); //HasMany(x => x.AttributeStringValues) // .Access.CamelCaseField(Prefix.Underscore) // .Cascade.MergeSaveAllDeleteOrphan() // .Fetch.Select() // .AsSet() // .Inverse() // .LazyLoad() // //.KeyColumns.Add("LocaleId"); // .Key(x => // { // x.Column("LocaleId"); // x.ForeignKey(this.GenerateFkName(y => y.AttributeStringValues)); // }); AdditionalMappingInfo(); }
/// <summary>Initializes a new instance of the <see cref="AttributeDefinitionGroupMap"/> class.</summary> public AttributeDefinitionGroupMap() { OptimisticLock.None(); Id(x => x.Id) .Access.CamelCaseField(Prefix.Underscore) .Column("NodeId") .GeneratedBy.Foreign("Node") .Not.Nullable(); References(x => x.Node) .Access.Property() .Cascade.All() .Column("NodeId") .ReadOnly() .Fetch.Join() .Not.Nullable().NotFound.Ignore() .ForeignKey(this.GenerateFkName(x => x.Node)); Map(x => x.Alias) .Access.Property() .Not.Nullable() .Length(64) .Index(this.GenerateIndexName(x => x.Alias)); //Map(x => x.Description).CustomType("StringClob").Access.CamelCaseField(Prefix.Underscore); Map(x => x.Name).Access.CamelCaseField(Prefix.Underscore); Map(x => x.Ordinal).Access.CamelCaseField(Prefix.Underscore) .Not.Nullable() .Default("0") .Index(this.GenerateIndexName(x => x.Ordinal)); HasMany(x => x.AttributeDefinitions) .Access.CamelCaseField(Prefix.Underscore) .Cascade.Merge() // APN 2011/12/15 Important: Changes AttributeDefinitionGroupMap to have Merge (rather than Merge + Delete Orphan) cascade style. NH has decided to start cascading deletions of AttributeDefinitions (which cascades further to stored Attributes) when a group is removed from a schema, even if those AttributeDefinitions are still referenced by the schema to another group (e.g. in the case of moving a def to another group, and deleting the previous group, in one operation). So to counter this (after much debugging and attempts at alternatives) I've disabled the cascading of deletions from a group to its attribute definitions, meaning in practise attribute definitions have to be manually deleted first / at the same time as a group if desired. It's never actually desired in the backoffice so it's fine for now. .Fetch.Select() .AsSet() .Inverse() .LazyLoad() // Reverse navigator so lazy-load //.KeyColumns.Add("AttributeDefinitionGroupId"); .Key(x => { x.Column("AttributeDefinitionGroupId"); x.ForeignKey(this.GenerateFkName(y => y.AttributeDefinitions)); }); References(x => x.AttributeSchemaDefinition) .Not.Nullable() .Cascade.Merge() .LazyLoad() .Index(this.GenerateIndexName(x => x.AttributeSchemaDefinition)) .Fetch.Select() .Column("AttributeSchemaDefinitionId"); //Key(x => // { // x.Column("NodeId"); // x.ForeignKey(this.GenerateFkName<AttributeDefinitionGroup, Node>()); // }); AdditionalMappingInfo(); }
/// <summary>Initializes a new instance of the <see cref="NodeRelationMap"/> class.</summary> public NodeRelationMap() { Table("NodeRelation"); OptimisticLock.None(); Id(x => x.Id) .Access.CamelCaseField(Prefix.Underscore) .Column("Id") .GeneratedBy.Custom <GuidCombUriGenerator>(); Map(x => x.DateCreated).Access.CamelCaseField(Prefix.Underscore) .Not.Nullable() .Index(this.GenerateIndexName(x => x.DateCreated)); Map(x => x.Ordinal).Access.CamelCaseField(Prefix.Underscore) .Not.Nullable() .Default("0") .Index(this.GenerateIndexName(x => x.Ordinal)); References(x => x.EndNode) .Access.CamelCaseField(Prefix.Underscore) .Cascade.Merge() .Fetch.Join() .Not.Nullable() //.LazyLoad(Laziness.NoProxy) .Column("EndNodeId") .Index(this.GenerateIndexName(x => x.EndNode)); HasMany(x => x.NodeRelationCaches) .Access.CamelCaseField(Prefix.Underscore) .Cascade.MergeSaveAllDeleteOrphan() .Fetch.Select() .AsSet() .Inverse() .LazyLoad() //.KeyColumns.Add("NodeRelationId"); .Key(x => { x.Column("NodeRelationId"); x.ForeignKey(this.GenerateFkName(y => y.NodeRelationCaches)); }); HasMany(x => x.NodeRelationTags) .Access.CamelCaseField(Prefix.Underscore) .Cascade.MergeSaveAllDeleteOrphan() .Fetch.Join() .AsSet() .Inverse() .BatchSize(20) //.LazyLoad() //.KeyColumns.Add("NodeRelationId") .Key(x => { x.Column("NodeRelationId"); x.ForeignKey(this.GenerateFkName(y => y.NodeRelationTags)); }) .Cache.IncludeAll().ReadWrite(); References(x => x.NodeRelationType) .Access.CamelCaseField(Prefix.Underscore) .Cascade.Merge() .Not.Nullable() .Fetch.Join() .Column("NodeRelationTypeId") .Index(this.GenerateIndexName(x => x.NodeRelationType)); References(x => x.StartNode) .Access.CamelCaseField(Prefix.Underscore) .Cascade.Merge() .Not.Nullable() .Fetch.Join() //.LazyLoad(Laziness.NoProxy) .Column("StartNodeId") .Index(this.GenerateIndexName(x => x.StartNode)); //Map(x => x.StartNodeId).Access.CamelCaseField(Prefix.Underscore); //Map(x => x.EndNodeId).Access.CamelCaseField(Prefix.Underscore); AdditionalMappingInfo(); }
/// <summary>Initializes a new instance of the <see cref="NodeMap"/> class.</summary> public NodeMap() { Table("Node"); OptimisticLock.None(); Polymorphism.Explicit(); Id(x => x.Id) .Access.CamelCaseField(Prefix.Underscore) .Column("Id") .GeneratedBy.Custom <GuidCombUriGenerator>(); Map(x => x.DateCreated).Access.CamelCaseField(Prefix.Underscore).Not.Nullable(); Map(x => x.IsDisabled).Access.CamelCaseField(Prefix.Underscore) .Not.Nullable() .Index(this.GenerateIndexName(x => x.IsDisabled)); HasMany(x => x.IncomingRelationCaches) .Access.CamelCaseField(Prefix.Underscore) //.Cascade.AllDeleteOrphan().ForeignKeyCascadeOnDelete() .Cascade.MergeSaveAllDeleteOrphan() //.ForeignKeyCascadeOnDelete() //.Cascade.All() //.Cascade.Merge() .Fetch.Select() .AsSet() .Inverse() .BatchSize(20) .LazyLoad() .Key(x => { x.Column("EndNodeId"); x.ForeignKey(this.GenerateFkName(y => y.IncomingRelationCaches)); }) .Cache.IncludeAll().ReadWrite(); HasMany(x => x.IncomingRelations) .Access.CamelCaseField(Prefix.Underscore) //.Cascade.AllDeleteOrphan().ForeignKeyCascadeOnDelete() .Cascade.MergeSaveAllDeleteOrphan() //.ForeignKeyCascadeOnDelete() //.Cascade.All() //.Cascade.Merge() .Fetch.Select() .AsSet() .Inverse() .BatchSize(20) .LazyLoad() .Key(x => { x.Column("EndNodeId"); x.ForeignKey(this.GenerateFkName(y => y.IncomingRelations)); }) ; //.Cache.IncludeAll().ReadWrite(); This was disabled 27/Sep by APN to resolve an issue where new published items are not routable HasMany(x => x.OutgoingRelationCaches) .Access.CamelCaseField(Prefix.Underscore) //.Cascade.AllDeleteOrphan().ForeignKeyCascadeOnDelete() .Cascade.MergeSaveAllDeleteOrphan() //.ForeignKeyCascadeOnDelete() //.Cascade.All() //.Cascade.Merge() .Fetch.Select() .AsSet() .Inverse() .BatchSize(20) .LazyLoad() .Key(x => { x.Column("StartNodeId"); x.ForeignKey(this.GenerateFkName(y => y.OutgoingRelationCaches)); }) .Cache.IncludeAll().ReadWrite(); HasMany(x => x.OutgoingRelations) .Access.CamelCaseField(Prefix.Underscore) //.Cascade.AllDeleteOrphan().ForeignKeyCascadeOnDelete() .Cascade.MergeSaveAllDeleteOrphan() //.ForeignKeyCascadeOnDelete() //.Cascade.All() //.Cascade.Merge() .Fetch.Select() .AsSet() .Inverse() .BatchSize(20) .LazyLoad() .Key(x => { x.Column("StartNodeId"); x.ForeignKey(this.GenerateFkName(y => y.OutgoingRelations)); }) ; //.Cache.IncludeAll().ReadWrite(); This was disabled 27/Sep by APN to resolve an issue where new published items are not routable HasMany(x => x.NodeVersions) .Access.Property() .Cascade.MergeSaveAllDeleteOrphan() //.ForeignKeyCascadeOnDelete() .Fetch.Select() .AsSet() .Inverse() .BatchSize(20) .LazyLoad() .Key(x => { x.Column("NodeId"); x.ForeignKey(this.GenerateFkName(y => y.NodeVersions)); }) .Cache.IncludeAll().ReadWrite(); AdditionalMappingInfo(); }
/// <summary>Initializes a new instance of the <see cref="AttributeMap"/> class.</summary> public AttributeMap() { Table("Attribute"); OptimisticLock.None(); Id(x => x.Id) .Access.CamelCaseField(Prefix.Underscore) .Column("Id") .GeneratedBy.Custom <GuidCombUriGenerator>(); References(x => x.AttributeDefinition) .Access.CamelCaseField(Prefix.Underscore) .Cascade.Merge() .Fetch.Select() .Not.Nullable() .Column("AttributeDefinitionId") .Index(this.GenerateIndexName(x => x.AttributeDefinition)); References(x => x.NodeVersion) .Access.CamelCaseField(Prefix.Underscore) .Cascade.Merge() .Fetch.Select() .Not.Nullable() .LazyLoad() .Column("NodeVersionId") .Index(this.GenerateIndexName(x => x.NodeVersion)); HasMany(x => x.AttributeDecimalValues) .Access.CamelCaseField(Prefix.Underscore) .Cascade.MergeSaveAllDeleteOrphan() .Fetch.Select().LazyLoad() .AsSet() .Inverse() .Key(x => { x.Column("AttributeId"); x.ForeignKey(this.GenerateFkName(y => y.AttributeDecimalValues)); }); HasMany(x => x.AttributeDateValues) .Access.CamelCaseField(Prefix.Underscore) .Cascade.MergeSaveAllDeleteOrphan() .Fetch.Select().LazyLoad() .AsSet() .Inverse() .Key(x => { x.Column("AttributeId"); x.ForeignKey(this.GenerateFkName(y => y.AttributeDateValues)); }); HasMany(x => x.AttributeIntegerValues) .Access.CamelCaseField(Prefix.Underscore) .Cascade.MergeSaveAllDeleteOrphan() .Fetch.Select().LazyLoad() .AsSet() .Inverse() .Key(x => { x.Column("AttributeId"); x.ForeignKey(this.GenerateFkName(y => y.AttributeIntegerValues)); }); HasMany(x => x.AttributeLongStringValues) .Access.CamelCaseField(Prefix.Underscore) .Cascade.MergeSaveAllDeleteOrphan() .Fetch.Select().LazyLoad() // Lazy-load long strings .AsSet() .Inverse() .Key(x => { x.Column("AttributeId"); x.ForeignKey(this.GenerateFkName(y => y.AttributeLongStringValues)); }); HasMany(x => x.AttributeStringValues) .Access.CamelCaseField(Prefix.Underscore) .Cascade.MergeSaveAllDeleteOrphan() .Fetch.Select().LazyLoad() .AsSet() .Inverse() .Key(x => { x.Column("AttributeId"); x.ForeignKey(this.GenerateFkName(y => y.AttributeStringValues)); }); AdditionalMappingInfo(); }
/// <summary>Initializes a new instance of the <see cref="NodeVersionMap"/> class.</summary> public NodeVersionMap() { Table("NodeVersion"); OptimisticLock.None(); Id(x => x.Id) .Access.CamelCaseField(Prefix.Underscore) .Column("Id") .GeneratedBy.Custom <GuidCombUriGenerator>(); Map(x => x.DateCreated).Access.CamelCaseField(Prefix.Underscore) .Not.Nullable() .Index(this.GenerateIndexName(x => x.DateCreated)); Map(x => x.DefaultName).Access.CamelCaseField(Prefix.Underscore); References(x => x.AttributeSchemaDefinition) .Access.CamelCaseField(Prefix.Underscore) .Not.Nullable() .Cascade.Merge() .Index(this.GenerateIndexName(x => x.AttributeSchemaDefinition)); HasMany(x => x.Attributes) .Access.CamelCaseField(Prefix.Underscore) .Cascade.MergeSaveAllDeleteOrphan() .Fetch.Join() // We rarely need a NodeVersion without its Attributes .AsSet() .Inverse() //.LazyLoad() // Not relevant when using a join fetch //.LazyLoad().Fetch.Select() //.KeyColumns.Add("NodeVersionId"); .Key(x => { x.Column("NodeVersionId"); x.ForeignKey(this.GenerateFkName(y => y.Attributes)); }); References(x => x.Node) .Access.CamelCaseField(Prefix.Underscore) .Cascade.Merge() .Not.Nullable() .Fetch.Select() .Column("NodeId") .Index(this.GenerateIndexName(x => x.Node)); HasMany(x => x.NodeVersionSchedules) .Access.CamelCaseField(Prefix.Underscore) .Cascade.MergeSaveAllDeleteOrphan() .Fetch.Select() .BatchSize(5) .AsSet() .Inverse() .LazyLoad() .Key(x => { x.Column("NodeVersionId"); x.ForeignKey(this.GenerateFkName(y => y.NodeVersionSchedules)); }); HasMany(x => x.NodeVersionStatuses) .Access.CamelCaseField(Prefix.Underscore) .Cascade.MergeSaveAllDeleteOrphan() .Fetch.Select() .BatchSize(20) .AsSet() .Inverse() //.LazyLoad() .Key(x => { x.Column("NodeVersionId"); x.ForeignKey(this.GenerateFkName(y => y.NodeVersionStatuses)); }); AdditionalMappingInfo(); }