2017-07-08 53 views
0

我在PowerShell上使用EWS管理郵箱的腳本,但是我無法使用當前過濾器並過濾某些類別。EWS分類搜索

我想,通過啓動過濾類別_或*,並適用於我目前的過濾器

$sfRead = New-Object Microsoft.Exchange.WebServices.Data.SearchFilter+IsEqualTo([Microsoft.Exchange.WebServices.Data.EmailMessageSchema]::IsRead, $True) 

$WIPSubject = New-Object Microsoft.Exchange.WebServices.Data.SearchFilter+ContainsSubstring([Microsoft.Exchange.WebServices.Data.ItemSchema]::Subject, "Assigned") 
$sfNot = New-Object Microsoft.Exchange.WebServices.Data.SearchFilter+Not($WIPSubject) 

$sfCollection = new-object Microsoft.Exchange.WebServices.Data.SearchFilter+SearchFilterCollection([Microsoft.Exchange.WebServices.Data.LogicalOperator]::And) 
$sfCollection.add($sfRead) 
$sfCollection.add($sfNot) 

回答

0

如果你想要做的主題通配符搜索,那麼我會建議你使用AQS的查詢,而不是https://msdn.microsoft.com/en-us/library/office/dn579420(v=exchg.150).aspx。 SearchFilters不支持包含通配符的ContainsSubString過濾器,它將查找最接近的部分字符串匹配https://msdn.microsoft.com/en-us/library/office/dd633645(v=exchg.80).aspx

+0

我試圖在ContainsSubString上使用AQS關鍵字,但是我無法將它添加到上面使用的SearchFilters上 – Pepi0

+0

您不能這樣做,您必須使用QueryString來代替搜索過濾器。如果某件事不起作用,則顯示不起作用的代碼 –