• Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 264
  • Last Modified:

object values appearing the same arent equal


  In the debugger I can see that the values of two objects look the same but when I do o1 == o2 this doesnt seem to hold true. I am tearing my hair out. Any clue why this would be the case. The

DataRow[] r = datatable.Select("ROWKEY=" + x);
Object o1 = r[0][columnName];                                     // original value
Object o2 = db2cmd.Parameter[columnName].Value;  //new value

if (o1 == o2)


1 Solution
do something like this to see if you can get more one what those objects are:
Response.Write("o1: " + o1.ToString() + "<br />");
Response.Write("o2: " + o2.ToString() + "<br />");
Response.Write("o1 GetType: " + o1.GetType().ToString() + "<br />");
Response.Write("o2 GetType: " + o2.GetType().ToString() + "<br />");

Open in new window

margajet24IT Business AnalystCommented:
try :


since objects are refence type, they can have same values but their memory location is different..

check their value not their reference..
LuckyLucksAuthor Commented:
I am curious about the explanation. If o1 == o2 compares the mem location then they should never be equal during the run of the program. But in some cases they are. Can you explain this?
Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

Join & Write a Comment

Featured Post

Keep up with what's happening at Experts Exchange!

Sign up to receive Decoded, a new monthly digest with product updates, feature release info, continuing education opportunities, and more.

Tackle projects and never again get stuck behind a technical roadblock.
Join Now