我有一个名为ValidColumns的函数,它在完成时将包含由管道字符“|”连接的一个id值的字符串。在一个函数中创建的传递字符串值作为函数的参数
private bool ValidColumns(string[] curGlobalAttr, int LineCount)
{
//test to see if there is more than 1 empty sku mod field in the imported file
string SkuMod = GetValue(curGlobalAttr, (int)GlobalAttrCols.SKU);
if(SkuMod =="")
ids += string.Join("|", OptionId);
}
我想要做的就是采取的ID字符串,并把它作为一个参考到另一个函数进行检查,看它是否包含重复的值:
protected bool CheckForDuplicates(ref string ids)
{
bool NoDupes = true;
string[] idSet = ids.Split('|');
for (int i = 1; i <= idSet.Length - 1; i++)
{
if (idSet[i].ToString() == idSet[i - 1].ToString()) { NoDupes = false; }
}
return NoDupes;
}
但我不知道如何正确地做?这似乎很容易,但我觉得我要做到这一点比它需要更难。
什么为什么你试图通过引用传递它,你的代码有什么问题,你在这里用? – Servy 2014-09-26 14:57:51
备注 - 由于您不是在更改原始字符串,因此您不需要传递参考。 – 2014-09-26 14:57:51
如果我是你,我会在第一个函数中执行'Join'之前检查重复项。它可以节省你不得不重新分裂的步骤来检查双倍。 – ps2goat 2014-09-26 14:58:00