private static bool IsIntraAggregateReference(IManyToOneInspector manyToOne)
        {
            var thisAggregate     = GetAggregateType(manyToOne.Property.DeclaringType);
            var referredAggregate = GetAggregateType(manyToOne.Class.GetUnderlyingSystemType());

            return(thisAggregate == referredAggregate);
        }
      private static bool IsIntraAggregateReference(IManyToOneInspector manyToOne)
      {
         var thisAggregate = GetAggregateType(manyToOne.Property.DeclaringType);
         var referredAggregate = GetAggregateType(manyToOne.Class.GetUnderlyingSystemType());

         return thisAggregate == referredAggregate;
      }
示例#3
0
        /// <summary>
        /// Gets the mapping.
        /// </summary>
        /// <param name="manyToOneInspector">The many to one inspector.</param>
        /// <returns>A <see cref="FluentNHibernate.MappingModel.ManyToOneMapping"/></returns>
        public static ManyToOneMapping GetMapping(this IManyToOneInspector manyToOneInspector)
        {
            var fieldInfo = manyToOneInspector.GetType().GetField("mapping", BindingFlags.NonPublic | BindingFlags.Instance);

            if (fieldInfo != null)
            {
                var manyToOneMapping = fieldInfo.GetValue(manyToOneInspector) as ManyToOneMapping;
                return(manyToOneMapping);
            }
            return(null);
        }
示例#4
0
        public static ManyToOneMapping GetMapping(this IManyToOneInspector manyToOneInspector)
        {
            Type      type      = manyToOneInspector.GetType();
            FieldInfo fieldInfo = null;

            mappingFieldsInfo.TryGetValue(type, out fieldInfo);

            if (fieldInfo == null)
            {
                fieldInfo = manyToOneInspector.GetType().GetField("mapping", BindingFlags.NonPublic | BindingFlags.Instance);
            }

            if (fieldInfo != null)
            {
                var manyToOneMapping = fieldInfo.GetValue(manyToOneInspector) as ManyToOneMapping;
                return(manyToOneMapping);
            }

            return(null);
        }
示例#5
0
        /// <summary>
        /// Sets the Index.
        /// </summary>
        /// <param name="manyToOneInspector">The many to one inspector.</param>
        /// <param name="indexName">Name of the index.</param>
        public static void Index(this IManyToOneInspector manyToOneInspector, string indexName)
        {
            ManyToOneMapping mapping = manyToOneInspector.GetMapping();

            mapping.Index(indexName);
        }
示例#6
0
        /// <summary>
        /// Sets the Foreign Key.
        /// </summary>
        /// <param name="manyToOneInspector">The many to one inspector.</param>
        /// <param name="foreignKeyName">Name of the foreign key.</param>
        public static void ForeignKey(this IManyToOneInspector manyToOneInspector, string foreignKeyName)
        {
            ManyToOneMapping mapping = manyToOneInspector.GetMapping();

            mapping.ForeignKey(foreignKeyName);
        }
示例#7
0
        /// <summary>
        /// Sets the Column.
        /// </summary>
        /// <param name="manyToOneInspector">The many to one inspector.</param>
        /// <param name="columnName">Name of the column.</param>
        public static void Column(this IManyToOneInspector manyToOneInspector, string columnName)
        {
            var mapping = manyToOneInspector.GetMapping();

            mapping.Column(columnName);
        }
 public void CreateDsl()
 {
     mapping = new ManyToOneMapping();
     inspector = new ManyToOneInspector(mapping);
 }
 public void CreateDsl()
 {
     mapping   = new ManyToOneMapping();
     inspector = new ManyToOneInspector(mapping);
 }
示例#10
0
 private void SetManyToOneForeignKey(IManyToOneInspector manyToOneInspector, IInspector instance)
 {
     manyToOneInspector.ForeignKey("Fk" + instance.EntityType.Name + "_" + GetColumnName(manyToOneInspector.Columns));
 }