cannot implicitly convert type 'Microsoft.SolverFoundation.Services.Term' to 'bool'

StackOverflow https://stackoverflow.com/questions/12529234

  •  03-07-2021
  •  | 
  •  

سؤال

I got an exception "cannot implicitly convert type 'Microsoft.SolverFoundation.Services.Term' to 'bool'" at the code below, how should I solve it?

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

            }

Below is the snap shot

enter image description here

هل كانت مفيدة؟

المحلول

The problem is that the Term class overrides the equality operator in a way that it doesn't return bool but another Term instead: http://msdn.microsoft.com/en-us/library/ff525374%28v=vs.93%29.aspx

I am not sure why they would do something like this, because it goes against any advice on overriding operators...

To fix your problem, use this code instead:

if(ReferenceEquals(a, null))
مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top