0

在过去的两天里,我一直在努力让这部分代码正常工作。

foreach (Tuple<StateObject,string> tupleObj in TCP_Globals.stateObj)
{

    if (tupleObj.Item2.Equals(ConnectedClientsListView.FocusedItem.SubItems[2].Text))
    {
        MessageBox.Show("DEBUG #3");
        StateObject stateObj = tupleObj.Item1; //Obtain the underlying socket management class via remoteIP
        MessageBox.Show("DEBUG #4");
    }
}

这...

if (tupleObj.Item2.Equals(ConnectedClientsListView.FocusedItem.SubItems[2].Text))

...即使两个字符串包含相同的值,也不会为真。如果永远不会通过。如何正确比较元组 obj 和 listViewItem?

4

1 回答 1

0

这个怎么样

if (tupleObj.Item2.ToString().ToLower() == 
         ConnectedClientsListView.FocusedItem.SubItems[2].Text.ToLower())

编辑:

既然您说字符串是IP,那么在这种情况下

var firstip = IPAddress.Parse(first_string);
var secondip = IPAddress.Parse(second_string);

if (firstip.Equals(secondip))
{
    Console.WriteLine("Equal!");
}
于 2013-05-12T10:44:19.370 回答