ISSUE: 在通过电子邮件查找联系人时,我无法收回某些数据。
背景: 通过电子邮件获取联系人,以查找重复项。这些重复项将在检索后进行管理
我使用此方法通过电子邮件获取联系人,如下所示:
public ContactList getContactByEmail(string email)
{
ACTFM.LogOn((path), user, pass);
//declare
CriteriaColumn cColumn;
OperatorEnum oOperator;
string sValue;
ContactLookup cLookup;
ContactList cList;
//init
oOperator = OperatorEnum.EqualTo;
sValue = email;
cColumn = ACTFM.Lookups.GetCriteriaColumn("TBL_CONTACT", "BUSINESS_EMAIL", true);
//hold lookup in array USE THE ***END*** method
Criteria[] lCriteria = new Criteria[] {
new Criteria(LogicalOperator.End, (byte)0, (byte)0, cColumn, oOperator, email)
};
//create lookup
cLookup = ACTFM.Lookups.LookupContactsReplace(lCriteria, true, true);
cList = cLookup.GetContacts(null);
ACTFM.LogOff();
return cList;
}
在另一个方法中,我调用了ContactList方法,如下所示:
ContactList similarsList = act.getContactByEmail(row.Cells[3].Text);
foreach (Act.Framework.Contacts.Contact con in similarsList)
{
Debug.WriteLine("a contact: " + con.FirstName);
}
在线上这样做:
Debug.WriteLine("a contact: " + con.FirstName);
我收到错误:"对象引用没有设置为对象的实例"。
有趣的是当我使用" con.ID"像这样:
Debug.WriteLine("a contact: " + con.ID);
代替:
Debug.WriteLine("a contact: " + con.FirstName);
我得到了我正在查找的联系人的预期ID。所以我知道代码在某种程度上有效吗?
问题: 尝试访问联系人字段时可能导致代码失败的原因,但访问ID字段时有效吗?
修改:
这不是con
为空的实例,也不应该为con.FirstName
为空。这就是我发布这个问题的原因,因为它没有意义。