Esempio n. 1
0
        public ListMapper(System.Type ownerType, System.Type elementType, IAccessorPropertyMapper accessorMapper, HbmList mapping)
        {
            if (ownerType == null)
            {
                throw new ArgumentNullException("ownerType");
            }
            if (elementType == null)
            {
                throw new ArgumentNullException("elementType");
            }
            if (mapping == null)
            {
                throw new ArgumentNullException("mapping");
            }
            OwnerType    = ownerType;
            ElementType  = elementType;
            this.mapping = mapping;
            if (mapping.Key == null)
            {
                mapping.key = new HbmKey();
            }
            keyMapper = new KeyMapper(ownerType, mapping.Key);
            var listIndex = new HbmListIndex();

            mapping.Item         = listIndex;
            listIndexMapper      = new ListIndexMapper(ownerType, listIndex);
            entityPropertyMapper = accessorMapper;
        }
 public void BindSimpleValue(HbmListIndex listIndexMapping, string propertyPath, bool isNullable)
 {
     new TypeBinder(value, Mappings).Bind(NHibernateUtil.Int32.Name);
     new ColumnsBinder(value, Mappings).Bind(listIndexMapping.Columns, isNullable,
                                             () =>
                                             new HbmColumn
     {
         name = mappings.NamingStrategy.PropertyToColumnName(propertyPath),
     });
 }
Esempio n. 3
0
 public ListIndexMapper(System.Type ownerEntityType, HbmListIndex mapping)
 {
     this.ownerEntityType = ownerEntityType;
     this.mapping         = mapping;
 }