C# 忽略数组中的异常
我有一个元素数组。我在循环中运行它。假设如果它有任何错误,它必须跳过该元素并继续到下一个元素 代码示例C# 忽略数组中的异常,c#,sharepoint,C#,Sharepoint,我有一个元素数组。我在循环中运行它。假设如果它有任何错误,它必须跳过该元素并继续到下一个元素 代码示例 foreach (Field field in fields) { try { string s = item.FieldValues[field.Title].ToString(); } catch (Exception ex) { Label label = new Label(); form1.Con
foreach (Field field in fields)
{
try
{
string s = item.FieldValues[field.Title].ToString();
}
catch (Exception ex)
{
Label label = new Label();
form1.Controls.Add(label);
label.Text = ex.Message;
}
Response.Write(field.Title);
}
它在item.field行中显示key not found异常。我想忽略它并传递到下一个字段不要使用异常来驱动代码。SharePoint中的字段是一个
字典
类型,因此您可以轻松检查字段是否存在ContainsKey
foreach (Field field in fields)
{
if(item.FieldValues.ContainsKey(field.Title)
{
string s = item.FieldValues[field.Title].ToString();
.......
}
Response.Write(field.Title);
}
使用异常,只是跳转到代码的另一部分,实际上是一种对性能有致命影响的糟糕做法
如果有办法,尽量避免导致异常的可预测条件
您是说字符串s=item。。。。line正在抛出异常?请在问题bodyTry console writing字段中进行澄清。标题位于字符串变量上方的行中。key not found异常中的最后一个应为item.FieldValues不具有的键