private string UnaryExpression(Expression exp, ref MemberType type)
{
UnaryExpression ue = ((UnaryExpression)exp);
var mex = ue.Operand;
bool? isComparisonOperator = null;
var isNot = ue.NodeType==ExpressionType.Not;
if (mex.NodeType == ExpressionType.MemberAccess && isNot)
{
isComparisonOperator = false;
}
var cse = CreateSqlElements(mex, ref type, false,isComparisonOperator);
if (type == MemberType.Value && isNot && cse.IsIn("1","0"))
{
cse = cse == "1" ? "0" : "1";
}else if (type == MemberType.None && isNot)
{
cse = " NOT " + cse;
}
return cse;
}