Specifies whether all properties of the target class can be used by the FullTextSearch Action, if they satisfy the Filter Controller's FilterController.FullTextSearchTargetPropertiesMode.
[AttributeUsage(AttributeTargets.Property | AttributeTargets.Field, Inherited = true)] public class SearchMemberOptionsAttribute : Attribute
<AttributeUsage(AttributeTargets.Property Or AttributeTargets.Field, Inherited:=True)> Public Class SearchMemberOptionsAttribute Inherits Attribute
By default, the FullTextSearch Action (see FilterController.FullTextFilterAction) searches words entered by an end-user in the following properties of the objects presented by the current List View:
- Any property of the current object
- Any property of the aggregated object
- The default property of the referenced object
- The properties that are presented by visible columns in the current List View
Note that if the current List View uses Server mode (has its Application Model's IModelListView.DataAccessMode property set to Server), non-persistent properties are excluded from searchable properties.
If the FilterController.FullTextSearchTargetPropertiesMode property is set to FullTextSearchTargetPropertiesMode.VisibleColumns, only the properties that are presented by visible columns in the current List View are included in the search.
You can modify the set of properties that are used when a criterion for the current List View is generated by the FullTextSearch Action's Criteria Builder. To do this, apply the SearchClassOptions attribute to the required business class or interface. This attribute takes the includeMembersInCriteria parameter. Passing the SearchMemberMode.Include value as this parameter, you allow the Criteria Builder to use all the properties that it has added to the set of properties in the generated criteria. At the same time, you can easily exclude individual properties from this set by applying the SearchMemberOptionsAttribute to these properties, and passing SearchMemberMode.Exclude as the attribute's parameter. When there are many properties to be excluded from the search, it is easier to pass the SearchMemberMode.Exclude value as the SearchClassOptions attribute and apply the SearchMemberOptions attribute with the SearchMemberMode.Include parameter value to the required properties.
You can find application examples of the SearchClassOptions and SearchMemberOptions attributes in the Feature Center Demo, included in the XAF installation.