public void ShouldWriteTheColumns() { var mapping = new IdMapping(); mapping.AddColumn(new ColumnMapping { Name = "Column1" }); writer.VerifyXml(mapping) .Element("column").Exists(); }
public void ShouldWriteTheColumns() { var mapping = new IdMapping(); mapping.AddColumn(Layer.Defaults, new ColumnMapping("Column1")); writer.VerifyXml(mapping) .Element("column").Exists(); }
public void Map(ClassMappingBase classMap, Member member) { if (!(classMap is ClassMapping)) { return; } var identity = ((ClassMapping) classMap).Id; if (identity == null) { var idMapping = new IdMapping {ContainingEntityType = classMap.Type}; var columnMapping = new ColumnMapping(); columnMapping.Set(x => x.Name, Layer.Defaults, member.Name); idMapping.AddColumn(Layer.Defaults, columnMapping); idMapping.Set(x => x.Name, Layer.Defaults, member.Name); idMapping.Set(x => x.Type, Layer.Defaults, new TypeReference(member.PropertyType)); idMapping.Member = member; idMapping.Set(x => x.Generator, Layer.Defaults, GetDefaultGenerator(member)); SetDefaultAccess(member, idMapping); identity = idMapping; } else { if (identity is IdMapping) { var idMapping = identity as IdMapping; var compositeId = new CompositeIdMapping {ContainingEntityType = classMap.Type}; var idKeyPropertyMapping = GetKeyPropertyMapping(classMap.Type, idMapping.Name, idMapping.Type.GetUnderlyingSystemType()); var keyPropertyMapping = GetKeyPropertyMapping(classMap.Type, member.Name, member.PropertyType); compositeId.AddKey(idKeyPropertyMapping); compositeId.AddKey(keyPropertyMapping); identity = compositeId; } else if (identity is CompositeIdMapping) { var compositeId = identity as CompositeIdMapping; var keyPropertyMapping = GetKeyPropertyMapping(classMap.Type, member.Name, member.PropertyType); compositeId.AddKey(keyPropertyMapping); identity = compositeId; } else { throw new NotImplementedException( string.Format("Mayank: Fluent nhibernate not exended to support type '{0}'", identity.GetType().Name)); } } ((ClassMapping) classMap).Set(x => x.Id, Layer.Defaults, identity); }
public void Map(ClassMappingBase classMap, Member member) { if (!(classMap is ClassMapping)) return; var idMapping = new IdMapping { ContainingEntityType = classMap.Type }; var columnMapping = new ColumnMapping(); columnMapping.Set(x => x.Name, Layer.Defaults, member.Name); idMapping.AddColumn(Layer.Defaults, columnMapping); idMapping.Set(x => x.Name, Layer.Defaults, member.Name); idMapping.Set(x => x.Type, Layer.Defaults, new TypeReference(member.PropertyType)); idMapping.Member = member; idMapping.Set(x => x.Generator, Layer.Defaults, GetDefaultGenerator(member)); SetDefaultAccess(member, idMapping); ((ClassMapping)classMap).Set(x => x.Id, Layer.Defaults, idMapping); }
IdMapping IIdentityMappingProvider.GetIdentityMapping() { var mapping = new IdMapping(attributes.CloneInner()) { ContainingEntityType = entityType }; if (columns.Count > 0) { foreach (var column in columns) mapping.AddColumn(new ColumnMapping(columnAttributes.CloneInner()) {Name = column}); } else mapping.AddDefaultColumn(new ColumnMapping(columnAttributes.CloneInner()) { Name = property.Name }); mapping.Name = property.Name; mapping.SetDefaultValue(x => x.Type, new TypeReference(property.PropertyType)); if (GeneratedBy.IsDirty) mapping.Generator = GeneratedBy.GetGeneratorMapping(); return mapping; }