C# Can';不要读取对等记录

C# Can';不要读取对等记录,c#,p2p,peer,pnrp,C#,P2p,Peer,Pnrp,我正在使用此代码阅读同行数据和评论: public Dictionary<int, string> ResolvePeerMethod() { Dictionary<int, string> peerInfo = new Dictionary<int, string>(); int count = 0; string[] peerinfo = new string[1]; PeerNameResolver resolver =

我正在使用此代码阅读同行数据和评论:

public Dictionary<int, string> ResolvePeerMethod()
{
    Dictionary<int, string> peerInfo = new Dictionary<int, string>();
    int count = 0;
    string[] peerinfo = new string[1];
    PeerNameResolver resolver = new PeerNameResolver();
    PeerName peerName123 = new PeerName("peer id");

    PeerNameRecordCollection results = resolver.Resolve(peerName123);

    foreach (PeerNameRecord record in results)
    {
        if (record.Comment != null)
        {
            peerinfo[0] = record.Comment;
            peerInfo.Add(0, peerinfo[0]);
        }
        if (record.Data != null)
        {
            peerinfo[1] = (System.Text.Encoding.ASCII.GetString(record.Data));
            peerInfo.Add(1, peerinfo[1]);
        }
    }

    return peerInfo;
}
公共字典解析peermethod()
{
Dictionary peerInfo=新字典();
整数计数=0;
string[]peerinfo=新字符串[1];
PeerNameResolver解析器=新的PeerNameResolver();
PeerName PeerName 123=新的PeerName(“对等id”);
PeerNameRecordCollection结果=解析器.Resolve(peerName123);
foreach(结果中的PeerNameRecord记录)
{
if(record.Comment!=null)
{
peerinfo[0]=记录.注释;
peerInfo.Add(0,peerInfo[0]);
}
if(record.Data!=null)
{
peerinfo[1]=(System.Text.Encoding.ASCII.GetString(record.Data));
添加(1,peerInfo[1]);
}
}
返回peerInfo;
}

这应该返回一个包含数据和注释的字典,但它只是跳过代码,因为它在对等方中找不到任何记录。在控制台中运行相同的代码是有效的。
对等id
正确;我已经检查过好几次了。

您说的是
resolver.Resolve(peerName123)
返回一个空集合,并且从未输入
foreach
块?顺便说一句,只是关于样式的一点说明,如果有两个变量的名称仅因大小写不同而不同,这是相当令人困惑的,尤其是当只有字母
I
/
I
不同时。似乎
peerinfo
可以被作用域为
foreach
循环的标量
string
替换。@BACON是的,它返回一条没有值的记录