Search code examples
vb.netcomparison-operators

Understanding assignment/comparison vb.net


This is my first time on Stack Overflow and I am trying to understand what '=' means in the last line of this code:

Dim label As Label = Me.labels.Item(String.Concat(New Object() { movimiento.Sector1.ID, "-", movimiento.X1, "-", movimiento.Y1 }))
Dim dictionary As Dictionary(Of Label, Integer)
Dim label3 As Label
dictionary = Me.demandas2.Item(label3 = label) = (dictionary.Item(label3) - 1)

Any kind of help will be welcome, thanks in advance!


Solution

  • Thanks a lot, everyone. The snippet was result of decompile a dll. I was trying to help a partner.

    .Net reflector decompiled based on VB.Net code, that was a mistake. Finally we see that first it should decompile using C# code, that gives a complete different meaning to the code:

    if (movimiento.Contenedor.Demanda2)
        {
            Dictionary<Label, int> dictionary;
            Label label3;
            (dictionary = this.demandas2)[label3 = label] = dictionary[label3] - 1;
            if (this.demandas2[label] == 0)
            {
                label.ForeColor = Color.Black;
            }
            (dictionary = this.demandas2)[label3 = label2] = dictionary[label3] + 1;
            label2.ForeColor = Color.DarkOrange;
        }