private ManyToOneMapping CreateMapping(Member property) { var mapping = new ManyToOneMapping { Member = property }; mapping.SetDefaultValue(x => x.Name, property.Name); mapping.SetDefaultValue(x => x.Class, new TypeReference(property.PropertyType)); mapping.AddDefaultColumn(new ColumnMapping { Name = property.Name + "_id" }); return(mapping); }
ManyToOneMapping IManyToOneMappingProvider.GetManyToOneMapping() { var mapping = new ManyToOneMapping(attributes.CloneInner()); mapping.ContainingEntityType = entity; mapping.Member = property; if (!mapping.IsSpecified("Name")) { mapping.Name = property.Name; } if (!mapping.IsSpecified("Class")) { mapping.SetDefaultValue(x => x.Class, new TypeReference(typeof(TOther))); } if (columns.Count == 0) { mapping.AddDefaultColumn(CreateColumn(property.Name + "_id")); } foreach (var column in columns) { var columnMapping = CreateColumn(column); mapping.AddColumn(columnMapping); } return(mapping); }
void InitialiseDefaults(Type containingEntityType, Member member) { mapping.ContainingEntityType = containingEntityType; mapping.Member = member; mapping.Name = member.Name; mapping.SetDefaultValue(x => x.Class, new TypeReference(typeof(TOther))); mapping.AddDefaultColumn(CreateColumn(member.Name + "_id")); }
private ManyToOneMapping CreateMapping(Member member) { var mapping = new ManyToOneMapping { Member = member }; mapping.SetDefaultValue(x => x.Name, member.Name); mapping.SetDefaultValue(x => x.Class, new TypeReference(member.PropertyType)); mapping.AddDefaultColumn(new ColumnMapping { Name = member.Name + "_id" }); if (member.IsProperty && !member.CanWrite) { mapping.Access = cfg.GetAccessStrategyForReadOnlyProperty(member).ToString(); } return(mapping); }