internal override TreeNode Print(DbExpressionVisitor<TreeNode> visitor)
 {
     var node = new TreeNode("DbSetClause");
     if (null != Property)
     {
         node.Children.Add(new TreeNode("Property", Property.Accept(visitor)));
     }
     if (null != Value)
     {
         node.Children.Add(new TreeNode("Value", Value.Accept(visitor)));
     }
     return node;
 }
 /// <summary>
 /// The visitor pattern interface method for expression visitors that produce a result value of a specific type.
 /// </summary>
 /// <param name="visitor">An instance of a typed DbExpressionVisitor that produces a result value of type TResultType.</param>
 /// <typeparam name="TResultType">The type of the result produced by <paramref name="visitor"/></typeparam>
 /// <exception cref="ArgumentNullException"><paramref name="visitor"/> is null</exception>
 /// <returns>An instance of <typeparamref name="TResultType"/>.</returns>
 public abstract TResultType Accept <TResultType>(DbExpressionVisitor <TResultType> visitor);
 // Effects: produces a tree node describing this clause, recursively producing nodes
 // for child expressions using the given expression visitor
 internal abstract TreeNode Print(DbExpressionVisitor<TreeNode> visitor);
 /// <summary>
 /// The visitor pattern interface method for expression visitors that do not produce a result value.
 /// </summary>
 /// <param name="visitor">An instance of DbExpressionVisitor.</param>
 /// <exception cref="ArgumentNullException"><paramref name="visitor"/> is null</exception>
 public abstract void Accept(DbExpressionVisitor visitor);