我有以下代码在标题中给出警告。我很确定我以前做过这样的事情,但它没有给出任何警告。我想问那些张贴的两件事。1)这里会导致什么问题?2)需要修复吗?
我问的原因是这段代码可以正常工作,因为我希望它很清楚这个警告不会引起问题。我不能忍受在我的代码中出现警告等,所以想要解决这个问题,但我也想知道为什么会出现这个警告,以及它是否以任何方式有害。
代码:
public class AttributeType
{
private string m_attributeNameField;
public string AttributeName
{
get { return m_attributeNameField; }
set { m_attributeNameField = value; }
}
}
private StandardResponseType ValidateAttributes(string featureType, IEnumerable<AttributeType> attributeList, string userCategory)
{
StandardResponseType standardResponse =
new StandardResponseType(DateTime.Now.ToString(CultureInfo.InvariantCulture), "RWOL_UTILS.Get_Item_Attributes", "", "OK");
if (attributeList.Any())
{
foreach (AttributeType attribute in attributeList)
{
if (attribute.AttributeName == null) continue;
{
//do stuff
}
}
}
else
{
standardResponse.Message = "Error: No attributes passed in the list. ValidateAttributes().";
standardResponse.ResponseCode = "FAIL";
return standardResponse;
}
}
编辑:该方法中有更多代码,但与此问题无关。
更新:我必须添加以下代码才能完成这项工作。为什么添加这个更有效?如果我必须计算并阅读新列表,那么这样做和在原始项目上做有什么区别?该列表只通过一次。如果在方法中填充了列表但不是,我可以理解这个问题。它刚刚传入已经填充。
List<AttributeType> newlist = attributeList.ToList();
if (newlist.Count() != 0)
{
foreach (AttributeType attribute in newlist)
............