不能隐式地将类型'Microsoft.SolverFoundation.Services.Term'转换为'bool'

时间:2012-09-21 11:00:54

标签: c# ms-solver-foundation

我得到一个例外“无法在下面的代码中隐式地将类型'Microsoft.SolverFoundation.Services.Term'转换为'bool'”,我该如何解决?

Term a=null;
            if(a==null)//<--this line exception
            {

            }

以下是快照

enter image description here

1 个答案:

答案 0 :(得分:5)

问题是Term类会以不返回bool的方式覆盖相等运算符,而是覆盖另一个Termhttp://msdn.microsoft.com/en-us/library/ff525374%28v=vs.93%29.aspx

我不确定为什么他们会做这样的事情,因为它反对任何关于覆盖运营商的建议......

要解决您的问题,请改用此代码:

if(ReferenceEquals(a, null))