嘿,我有一个循环,将聚集的字符串和整数添加到对象中,然后将该对象添加到列表中。我需要它来检查是否已经有一个对象具有一个属性==给我要分配的对象,然后根据属性是哪一个,我要么改变它的一个属性,要么添加一个新的属性目的。我将在稍后分类。这是我卡住的地方。我已经标记了该行(当前注释掉),当它被激活时,会导致命令行冻结。奇怪的是,我早先使用IDENTICAL代码没有问题。将对象添加到列表时,c#循环失败!
正如你所看到的,我还有一些其他的代码目前已被注释掉,因为这个位需要在我能继续之前工作,但是我留下了它让你对我正在做的事有了更多的了解。
解决了。我实际上不得不将它向上移动两圈。谢谢!
//IF THIS IS THE FIRST ONE, ADD IT!
var refSize = Referrals.Count();
if (refSize == 0)
{
var NewReferral = new Referral(referringURL.Trim(), referringWords.Trim(), 3);
Referrals.Add(NewReferral);
}
else
{
for (int i=0;i<refSize;i++)
{
// RESET BOOLS
URLPresent = false;
KeywordPresent = false;
// IF THE URL IS ALREADY PRESENT
//if (Referrals[i].URL == referringURL)
//{
//URLPresent = true;
// CHECK IF THE KEYWORD IS ALREADY PRESENT
//for (int ii=0;ii<Referrals[i].Keywords.Count;ii++)
//{
// if (Referrals[i].Keywords[ii] == referringWords)
// {
// ADD TO OCCURRENCES
// Referrals[i].Occurrences++;
// KeywordPresent = true;
// }
//}
// ADD KEYWORD TO LIST
// ###
// ###
//}
// IF THE KEYWORD ISN'T THERE && THE URL ISNT THERE, ADD A NEW REFERRAL OBJECT
if (URLPresent == false && KeywordPresent == false)
{
var NewReferral = new Referral(referringURL.Trim(), referringWords.Trim(), 3);
//Referrals.Add(NewReferral); //HERE IS MY PROBLEM! UNCOMMENTING THIS LINE CAUSES A FAIL.
//URLPresent = true;
//KeywordPresent = true;
}
// IF THE URL IS THERE, BUT THE KEYWORD ISNT, ADD AN ELEMENT TO THE REFERRAL.KEYWORDS LIST
//else if (URLPresent == true && KeywordPresent == false)
//{
//Referrals[i].Keywords.Add(referringWords);
//URLPresent = true;
//KeywordPresent = true;
//}
}
}
+1打我10秒 – 2009-07-22 15:04:42