【问题标题】:2 dynamic variables with the same value arent equal2个具有相同值的动态变量相等
【发布时间】:2016-11-27 00:06:08
【问题描述】:

我有 2 个具有相同值的动态变量。 但是当我尝试写出它们是否相等时,答案是

错误

你能帮我解决我无法解决的问题吗...

代码:

Console.WriteLine(originalDataDyn.suplovanie == dataDyn.suplovanie);

变量值:

{[
  {
    "trieda": "I.AA ➔ Odpadlo",
    "hodina": "7",
    "ucebna": "S4 - 1C1032 ➔ Odpadlo",
    "poznamka": "",
    "ucitel": "ANT ➔ Odpadlo",
    "predmet": "NJV ➔ Odpadlo"
  },
  {
    "trieda": "I.AE",
    "hodina": "2",
    "ucebna": "4.AT - 1B001",
    "poznamka": "",
    "ucitel": "DEK ➔ KES",
    "predmet": "MAT ➔ INF"
  },
  {
    "trieda": "",
    "hodina": "3",
    "ucebna": "DGEL - 6B107, DURB - 1RUO, USVA - 1F203, +DMOL - 6B106",
    "poznamka": "",
    "ucitel": "GEL, SVA, VER ➔ MOL",
    "predmet": "PRA"
  },
  {
    "trieda": "",
    "hodina": "4",
    "ucebna": "DGEL - 6B107, DURB - 1RUO, USVA - 1F203, +DMOL - 6B106",
    "poznamka": "",
    "ucitel": "GEL, SVA, VER ➔ MOL",
    "predmet": "PRA"
  },
  {
    "trieda": "",
    "hodina": "5",
    "ucebna": "DGEL - 6B107, DURB - 1RUO, USVA - 1F203, +DMOL - 6B106",
    "poznamka": "",
    "ucitel": "GEL, SVA, VER ➔ MOL",
    "predmet": "PRA"
  },
  {
    "trieda": "I.BE",
    "hodina": "3",
    "ucebna": "2.DA - 1D001",
    "poznamka": "nahradená 7. hod. z 1.12.2016",
    "ucitel": "DEK ➔ VES",
    "predmet": "MAT ➔ SJL"
  }
]}

【问题讨论】:

  • 所以suplovanie 持有一个字符串?
  • 显示你的变量是如何被初始化或分配给...
  • 你需要了解Reference type vs value type的区别。

标签: c# equality


【解决方案1】:

可能== 正在执行对象比较,因为它们是两个不同的对象,所以比较失败。请尝试以下方法之一:

originalDataDyn.suplovanie.ToString() == dataDyn.suplovanie.ToString()

originalDataDyn.suplovanie.Equals(dataDyn.suplovanie)

【讨论】:

  • originalDataDyn.suplovanie.ToString() == dataDyn.suplovanie.ToString() 这对您有帮助,谢谢
猜你喜欢
  • 1970-01-01
  • 2012-01-25
  • 1970-01-01
  • 1970-01-01
  • 2021-09-15
  • 2017-03-26
  • 1970-01-01
  • 1970-01-01
  • 2013-11-13
相关资源
最近更新 更多