对于我公司的某些帐户,我无法收到电子邮件签名。我使用以下代码来检索签名:
let input2 = "5*(5.0/2.0)" // == 12.5
let predicate2 = NSPredicate(format: "1.0 * \(input2) = 0")
if let comparisation = predicate2 as? NSComparisonPredicate {
let leftExpression = comparisation.leftExpression
if let result = leftExpression.expressionValue(with: nil,
context: nil) as? NSNumber {
print("Result is: \(result.doubleValue)") // == 12.5
}
}
通常它工作正常,但对于某些帐户,它会抛出:
在商店中找不到指定的对象。,找不到配置对象。 Name = OWA.UserOptions。
答案 0 :(得分:1)
以前从未登录过OWA的帐户会出现该错误。
这些帐户不存在UserConfiguration
对象,您无法在代码中绑定它。
您可以先检查UserConfiguration
对象,然后创建它,如果它不存在:
SearchFilter sf = new SearchFilter.IsEqualTo(ItemSchema.ItemClass, "IPM.Configuration.OWA.UserOptions");
ItemView iv = new ItemView(1);
iv.Traversal = ItemTraversal.Associated;
FindItemsResults<Item> fiResults = Root.FindItems(sf, iv);
UserConfiguration OWAConfig =null;
if (fiResults.Items.Count == 0)
{
OWAConfig = new UserConfiguration(service);
OWAConfig.Save("OWA.UserOptions", Root.ParentFolderId);
}
注意:创建新的UserConfiguration
对象可能会导致问题,因为它不会首次设置OWA登录设置,区域设置等。
您需要为此测试受影响的帐户并相应地进行纠正。