Пример #1
0
 /// <summary>Default constructor with aboutness and its source passed.</summary>
 /// <param name="about">Specifies an entity identifier given accesor uses.</param>
 /// <param name="sourceExpression">Source of this entity accessor.</param>
 internal StrongEntityAccessor(Identifier about, Remotion.Linq.Clauses.FromClauseBase sourceExpression)
     : this()
 {
     About             = about;
     _source           = SourceTypes.Member;
     _sourceExpression = sourceExpression;
 }
Пример #2
0
        /// <summary>Default constructor with base <see cref="System.Linq.Expressions.MemberExpression" /> and <see cref="Remotion.Linq.Clauses.FromClauseBase" />.</summary>
        /// <param name="expression">Base member expression.</param>
        /// <param name="target">Target of the invocation.</param>
        internal EntityIdentifierExpression(System.Linq.Expressions.MemberExpression expression, Remotion.Linq.Clauses.FromClauseBase target)
            : base()
        {
            if (!(expression.Member is PropertyInfo))
            {
                throw new ArgumentOutOfRangeException("expression");
            }

            _expression = expression;
            _target     = target;
        }
        /// <summary>Default constructor with base <see cref="System.Linq.Expressions.MemberExpression" /> and <see cref="Remotion.Linq.Clauses.FromClauseBase" />.</summary>
        /// <param name="expression">Base member expression.</param>
        /// <param name="target">Target of the invocation.</param>
        internal EntityIdentifierExpression(System.Linq.Expressions.MemberExpression expression, Remotion.Linq.Clauses.FromClauseBase target)
            : base()
        {
            if (!(expression.Member is PropertyInfo))
            {
                throw new ArgumentOutOfRangeException("expression");
            }

            _expression = expression;
            _target = target;
        }
        /// <summary>Default constructor with base <see cref="System.Linq.Expressions.MemberExpression" />, <see cref="IPropertyMapping" /> and <see cref="Remotion.Linq.Clauses.FromClauseBase" />.</summary>
        /// <param name="expression">Base member expression.</param>
        /// <param name="propertyMapping">Ontology property mapping.</param>
        /// <param name="target">Target of the invocation.</param>
        /// <param name="name">Name of the element in the property.</param>
        internal EntityPropertyExpression(System.Linq.Expressions.MemberExpression expression, IPropertyMapping propertyMapping, Remotion.Linq.Clauses.FromClauseBase target, string name)
            : base()
        {
            if (!(expression.Member is PropertyInfo))
            {
                throw new ArgumentOutOfRangeException("expression");
            }

            if (name.Length == 0)
            {
                throw new ArgumentOutOfRangeException("name");
            }

            _expression = expression;
            _propertyMapping = propertyMapping;
            _target = target;
            _name = name;
        }
        /// <summary>Default constructor with base <see cref="System.Linq.Expressions.MemberExpression" />, <see cref="IPropertyMapping" /> and <see cref="Remotion.Linq.Clauses.FromClauseBase" />.</summary>
        /// <param name="expression">Base member expression.</param>
        /// <param name="propertyMapping">Ontology property mapping.</param>
        /// <param name="target">Target of the invocation.</param>
        /// <param name="name">Name of the element in the property.</param>
        internal EntityPropertyExpression(System.Linq.Expressions.MemberExpression expression, IPropertyMapping propertyMapping, Remotion.Linq.Clauses.FromClauseBase target, string name)
            : base()
        {
            if (!(expression.Member is PropertyInfo))
            {
                throw new ArgumentOutOfRangeException("expression");
            }

            if (name.Length == 0)
            {
                throw new ArgumentOutOfRangeException("name");
            }

            _expression      = expression;
            _propertyMapping = propertyMapping;
            _target          = target;
            _name            = name;
        }
Пример #6
0
 internal static bool EqualsTo(this Remotion.Linq.Clauses.FromClauseBase operandA, Remotion.Linq.Clauses.FromClauseBase operandB)
 {
     if ((Object.Equals(operandA, null)) && (Object.Equals(operandB, null)))
     {
         return(true);
     }
     if (((Object.Equals(operandA, null)) && (!Object.Equals(operandB, null))) || ((!Object.Equals(operandA, null)) && (Object.Equals(operandB, null))))
     {
         return(false);
     }
     if (Object.ReferenceEquals(operandA, operandB))
     {
         return(true);
     }
     if (operandA.GetType() != operandB.GetType())
     {
         return(false);
     }
     if ((operandA.ItemName == operandB.ItemName) && (operandA.ItemType == operandB.ItemType) && (operandA.FromExpression.EqualsTo(operandB.FromExpression)))
     {
         return(true);
     }
     return(false);
 }
 /// <summary>Default constructor with base <see cref="System.Linq.Expressions.MemberExpression" />, <see cref="IPropertyMapping" /> and <see cref="Remotion.Linq.Clauses.FromClauseBase" />.</summary>
 /// <param name="expression">Base member expression.</param>
 /// <param name="propertyMapping">Ontology property mapping.</param>
 /// <param name="target">Target of the invocation.</param>
 internal EntityPropertyExpression(System.Linq.Expressions.MemberExpression expression, IPropertyMapping propertyMapping, Remotion.Linq.Clauses.FromClauseBase target) :
     this(expression, propertyMapping, target, expression.Member.Name)
 {
 }
Пример #8
0
 /// <summary>Default constructor with aboutness and its source passed.</summary>
 /// <param name="about">Specifies an entity identifier given accesor uses.</param>
 /// <param name="sourceExpression">Source of this entity accessor.</param>
 /// <param name="entityAccessor">Strong entity accessor.</param>
 internal IdentifierEntityAccessor(Identifier about, Remotion.Linq.Clauses.FromClauseBase sourceExpression, StrongEntityAccessor entityAccessor)
     : base(about, sourceExpression)
 {
     _entityAccessor = entityAccessor;
 }