Update Bug

This commit is contained in:
sunkaixuan 2017-06-04 20:55:59 +08:00
parent edcb31ea03
commit c4ca36316e
2 changed files with 17 additions and 17 deletions

View File

@ -23,17 +23,18 @@ namespace SqlSugar
var nodeType = expression.NodeType;
base.Expression = expression.Operand;
var isMember = expression.Operand is MemberExpression;
var isConst = expression.Operand is ConstantExpression;
if (base.Expression is BinaryExpression || parameter.BaseExpression is BinaryExpression)
{
Default(parameter, nodeType);
Append(parameter, nodeType);
}
else if (base.Expression is MemberExpression || base.Expression is ConstantExpression||isMember)
else if (isMember || isConst)
{
ChildNodeSet(parameter, nodeType);
Result(parameter, nodeType);
}
else
{
Default(parameter, nodeType);
Append(parameter, nodeType);
}
break;
default:
@ -41,7 +42,7 @@ namespace SqlSugar
}
}
private void ChildNodeSet(ExpressionParameter parameter, ExpressionType nodeType)
private void Result(ExpressionParameter parameter, ExpressionType nodeType)
{
BaseParameter.ChildExpression = base.Expression;
parameter.CommonTempData = CommonTempDataType.ChildNodeSet;
@ -53,7 +54,7 @@ namespace SqlSugar
parameter.CommonTempData = null;
}
private void Default(ExpressionParameter parameter, ExpressionType nodeType)
private void Append(ExpressionParameter parameter, ExpressionType nodeType)
{
BaseParameter.ChildExpression = base.Expression;
parameter.CommonTempData = CommonTempDataType.Default;

View File

@ -47,17 +47,16 @@ namespace SqlSugar
columnproperty(syscolumns.id,syscolumns.name,'IsIdentity')as IsIdentity,
(CASE
WHEN EXISTS
(SELECT 1
FROM sysobjects
WHERE xtype= 'pk'
AND name IN
(SELECT name
FROM sysindexes
WHERE indid IN
(SELECT indid
FROM sysindexkeys
WHERE id = syscolumns.id
AND colid=syscolumns.colid ))) THEN 1
(
select 1
from sysindexes i
join sysindexkeys k on i.id = k.id and i.indid = k.indid
join sysobjects o on i.id = o.id
join syscolumns c on i.id=c.id and k.colid = c.colid
where o.xtype = 'U'
and exists(select 1 from sysobjects where xtype = 'PK' and name = i.name)
and o.name=sysobjects.name and c.name=syscolumns.name
) THEN 1
ELSE 0
END) AS IsPrimaryKey
FROM syscolumns