好的,这是我的问题。我正在使用来自 Salesforce API 的 saveresult,并且正在学习 LINQ。我不知道在这里使用它可能不是最好的,但这是我正在尝试做的,只是更有说服力。
顺便说一句,这里的 saveresult[] 类缩小为定义:
public partial class SaveResult {
private Error[] errorsField;
private string idField;
private bool successField;
[System.Xml.Serialization.XmlElementAttribute("errors")]
public Error[] errors
[System.Xml.Serialization.XmlElementAttribute(IsNullable=true)]
public string id
public bool success
}
这就是我想要做的事情。检查错误,如果返回的保存结果中有错误则返回,如果没有错误则返回 null。
string errors = null;
foreach (SaveResult s in saved)
{
if (s.success) continue;
else
{
foreach (Error e in s.errors)
{
errors += String.Format("Errors on object: {0}. Error Code is: {1}. Error Message: {2}",
s.id,e.statusCode.ToString(),e.message);
}
}
}
到目前为止,我有:
return saved
.Select(i => i.errors
.Select(j => new { j.statusCode, j.message })
.Distinct()
.ToList()
).ToString();
我很确定在继续之前我需要一个匿名函数来评估 i 的错误。
无论如何,就是这样。感谢您的帮助(或指向我帮助的链接!)