SContentRestriction
適用於:Outlook 2013 |Outlook 2016
描述內容限制,用來將數據表檢視限制為僅包含內容符合搜尋字串之數據行的數據列。
屬性 | 值 |
---|---|
標頭檔: |
Mapidefs.h |
typedef struct _SContentRestriction
{
ULONG ulFuzzyLevel;
ULONG ulPropTag;
LPSPropValue lpProp;
} SContentRestriction;
成員
ulFuzzyLevel
選項設定,定義當您驗證相符專案時,內容限制應該強制執行的精確度層級。
ulFuzzyLevel 成員的下層 16 位會套用至類型PT_BINARY和PT_STRING8的屬性,而且必須設定為下列其中一個值:
FL_FULLSTRING:若要相符, lpProp 搜尋字串必須包含在 ulPropTag 所識別的 屬性中。
FL_PREFIX:若要相符, lpProp 搜尋字串必須出現在 ulPropTag 所識別屬性的開頭。 這兩個字串只能與 lpProp 所指出的搜尋字串長度進行比較。
FL_SUBSTRING:若要相符, lpProp 搜尋字串必須包含在 ulPropTag 所識別屬性的任何位置。
ulFuzzyLevel 成員的上 16 位只套用至類型PT_STRING8的屬性,並可在任何組合中設定為下列值:
FL_IGNORECASE:在不考慮大小寫的情況下,應該進行比較。
FL_IGNORENONSPACE:比較應該忽略 Unicode 定義的非間距字元,例如變音符號。
FL_LOOSE:比較應該盡可能為您提供相符專案,並忽略大小寫和非間距字元。
ulPropTag
屬性標籤,識別要檢查搜尋字串出現的字串屬性。
lpProp
屬性值結構的指標,其中包含要作為搜尋字串使用的字串值。
註解
SContentRestriction 結構中有兩個屬性標記:一個在 ulPropTag 成員中,另一個在 lpProp 所指向之 SPropValue 結構的 ulPropTag 成員中。 在這兩個標記中,MAPI 只需要屬性類型欄位,並忽略屬性標識符字段。 不過,這兩個屬性類型必須相符,否則當限制用於呼叫 IMAPITable::Restrict 或 IMAPITable::FindRow 時,會傳回錯誤值MAPI_E_TOO_COMPLEX。
FL_FULLSTRING、FL_PREFIX和FL_SUBSTRING值互斥。 只能設定其中一個,而且必須設定其中一個。 其意義是固定的,而且提供者必須完全依照定義來實作它們。 如果提供者無法支持這些值,則應該傳回MAPI_E_TOO_COMPLEX。
FL_IGNORECASE、FL_IGNORENONSPACE和FL_LOOSE的值是獨立的。 可以設定從零到全部三個的任意位置。 其定義僅提供為指導方針,且提供者可以自由地實作每個旗標本身的特定意義。 如果提供者沒有指定旗標的實作,則不應傳回任何錯誤指示。
當屬性不存在時,針對屬性加權的內容限制結果未定義。 當用戶端需要這類限制的定義完善行為,而且不確定屬性是否存在時,它就不是數據表的必要數據行,它應該建立 AND 限制,以將內容限制與存在限制聯結。 使用 SExistRestriction 結構來定義存在限制,並使用 SAndRestriction 結構來定義 AND 限制。
如需 SContentRestriction 結構和限制的一般詳細資訊,請參閱 關於限制。