Compiler Warning (level 2) CS0252
Collapse the table of content
Expand the table of content
The document is archived and information here might be outdated

Compiler Warning (level 2) CS0252

Possible unintended reference comparison; to get a value comparison, cast the left hand side to type 'type'

The compiler is doing a reference comparison. If you want to compare the value of strings, cast the left side of the expression to type.

The following sample generates CS0252:

// CS0252.cs
// compile with: /W:2
using System;

class MyClass
   public static void Main()
      string s = "11";
      object o = s + s;

      bool b = o == s;   // CS0252
      // try the following line instead
      // bool b = (string)o == s;
© 2016 Microsoft