# SearchContextAttribute

> Search context constructor used to add some search context to an object field.

## Definition

* **Type:** Constructor
* **Namespace:** [UnityEngine.Search](/engine/6000.6/script-reference/unityengine/search.md)
* **Assembly:** UnityEngine.CoreModule

## SearchContextAttribute(string)

Search context constructor used to add some search context to an object field.

```csharp
public SearchContextAttribute(string query)
```

### Parameters

**** (\[string]\(https\://learn.microsoft.com/dotnet/api/system.string)): Initial search query text used to open the Object Picker window.

### Examples

```csharp
    const string assetProviders = "adb;asset";
    const string objectProviders = "adb,asset,scene";
    const SearchViewFlags pickerMinimalUIFlags = SearchViewFlags.Packages |
        SearchViewFlags.IgnoreSavedSearches |
        SearchViewFlags.DisableSavedSearchQuery |
        SearchViewFlags.OpenInBuilderMode |
        SearchViewFlags.DisableBuilderModeToggle |
        SearchViewFlags.IgnoreSavedSearches;

    [SearchContext("cub", "adb", SearchViewFlags.ObjectPickerAdvancedUI | SearchViewFlags.ListView | SearchViewFlags.IgnoreSavedSearches)] public MonoScript myProjectScript;
    [SearchContext("script", "adb", SearchViewFlags.Packages | SearchViewFlags.CompactView)] public MonoScript myPackageScript;
    [SearchContext("t:texture", assetProviders, SearchViewFlags.ObjectPickerAdvancedUI | SearchViewFlags.GridView)] public Texture myTexture;
    [SearchContext("t:texture", assetProviders, SearchViewFlags.ObjectPickerAdvancedUI | SearchViewFlags.GridView)] public Texture[] myTextureArray;
    [SearchContext("t:texture", assetProviders, SearchViewFlags.ObjectPickerAdvancedUI | SearchViewFlags.GridView)] public List<Texture> myTextureList;
    [SearchContext("t:texture", "adb", SearchViewFlags.OpenInspectorPreview)] public Texture myTextureWithInspector;
    [SearchContext("non_mobile", SearchViewFlags.Centered)] public UnityEngine.Object myAnyObject;
    [SearchContext("non_mobile", SearchViewFlags.Debug)] public UnityEngine.Object myDebugObject;
    [SearchContext("t:mesh is:nested mesh", "asset")] public UnityEngine.Object assetMesh;
    [SearchContext("h: cube", "scene")] public MeshFilter sceneMesh;
    [SearchContext("shader:standard", assetProviders, SearchViewFlags.HideSearchBar)] public Material materialNoSearchBar;
    [SearchContext("select{p:t:material, @label, @size}", objectProviders, SearchViewFlags.TableView)] public Material selectMaterial;
    [SearchContext("Assets/Queries/textures.asset", assetProviders)] public Texture searchQueryPathTexture;
    [SearchContext("3c7f5dff3fb5d724688dfcecfb131b2a", assetProviders)] public Texture searchQueryGuidTexture;
    [SearchContext("non_mobile", SearchViewFlags.ObjectPickerAdvancedUI | SearchViewFlags.EnableSearchQuery)] public UnityEngine.Object myObjectWithSearchQueryEnabled;
    [SearchContext("non_mobile", SearchViewFlags.ObjectPickerAdvancedUI | SearchViewFlags.DisableInspectorPreview)] public UnityEngine.Object myObjectWithInspectorDisabled;
    [SearchContext("p: t:texture", "asset", SearchViewFlags.ObjectPickerAdvancedUI | SearchViewFlags.OpenInBuilderMode)] public Texture myTextureWithBuilder;
    [SearchContext("p: t:texture", "asset", SearchViewFlags.OpenInBuilderMode | SearchViewFlags.DisableBuilderModeToggle)] public Texture myTextureWithBuilderNoToggle;
    [SearchContext("p: t:texture", "asset", SearchViewFlags.OpenInTextMode | SearchViewFlags.DisableBuilderModeToggle)] public Texture myTextureNoBuilderNoToggle;
    [SearchContext("t:currentobject{@type, 'texture'}", "asset")] public UnityEngine.Object myObjectWithContext;

    [SearchContext("light")] public UnityEngine.GameObject lightSearch;
    [SearchContext("camera", SearchViewFlags.None)] public UnityEngine.GameObject cameraSearch;

    public UnityEngine.GameObject noSearchContext;

#if USE_QUERY_BUILDER
    [SearchContext("p: t:<$list:Texture2D, [Texture2D, Material, Prefab]$>", "asset", SearchViewFlags.OpenInBuilderMode | SearchViewFlags.DisableBuilderModeToggle)] public UnityEngine.Object myObjectOfConstrainedTypes;
#endif
```

## SearchContextAttribute(string, SearchViewFlags)

Search context constructor used to add some search context to an object field.

```csharp
public SearchContextAttribute(string query, SearchViewFlags flags)
```

### Parameters

**** (\[string]\(https\://learn.microsoft.com/dotnet/api/system.string)): Initial search query text used to open the Object Picker window.**** (\[SearchViewFlags]\(/engine/6000.6/script-reference/unityengine/search/searchviewflags)): Search view flags used to open the Object Picker in various states.

### Examples

```csharp
    const string assetProviders = "adb;asset";
    const string objectProviders = "adb,asset,scene";
    const SearchViewFlags pickerMinimalUIFlags = SearchViewFlags.Packages |
        SearchViewFlags.IgnoreSavedSearches |
        SearchViewFlags.DisableSavedSearchQuery |
        SearchViewFlags.OpenInBuilderMode |
        SearchViewFlags.DisableBuilderModeToggle |
        SearchViewFlags.IgnoreSavedSearches;

    [SearchContext("cub", "adb", SearchViewFlags.ObjectPickerAdvancedUI | SearchViewFlags.ListView | SearchViewFlags.IgnoreSavedSearches)] public MonoScript myProjectScript;
    [SearchContext("script", "adb", SearchViewFlags.Packages | SearchViewFlags.CompactView)] public MonoScript myPackageScript;
    [SearchContext("t:texture", assetProviders, SearchViewFlags.ObjectPickerAdvancedUI | SearchViewFlags.GridView)] public Texture myTexture;
    [SearchContext("t:texture", assetProviders, SearchViewFlags.ObjectPickerAdvancedUI | SearchViewFlags.GridView)] public Texture[] myTextureArray;
    [SearchContext("t:texture", assetProviders, SearchViewFlags.ObjectPickerAdvancedUI | SearchViewFlags.GridView)] public List<Texture> myTextureList;
    [SearchContext("t:texture", "adb", SearchViewFlags.OpenInspectorPreview)] public Texture myTextureWithInspector;
    [SearchContext("non_mobile", SearchViewFlags.Centered)] public UnityEngine.Object myAnyObject;
    [SearchContext("non_mobile", SearchViewFlags.Debug)] public UnityEngine.Object myDebugObject;
    [SearchContext("t:mesh is:nested mesh", "asset")] public UnityEngine.Object assetMesh;
    [SearchContext("h: cube", "scene")] public MeshFilter sceneMesh;
    [SearchContext("shader:standard", assetProviders, SearchViewFlags.HideSearchBar)] public Material materialNoSearchBar;
    [SearchContext("select{p:t:material, @label, @size}", objectProviders, SearchViewFlags.TableView)] public Material selectMaterial;
    [SearchContext("Assets/Queries/textures.asset", assetProviders)] public Texture searchQueryPathTexture;
    [SearchContext("3c7f5dff3fb5d724688dfcecfb131b2a", assetProviders)] public Texture searchQueryGuidTexture;
    [SearchContext("non_mobile", SearchViewFlags.ObjectPickerAdvancedUI | SearchViewFlags.EnableSearchQuery)] public UnityEngine.Object myObjectWithSearchQueryEnabled;
    [SearchContext("non_mobile", SearchViewFlags.ObjectPickerAdvancedUI | SearchViewFlags.DisableInspectorPreview)] public UnityEngine.Object myObjectWithInspectorDisabled;
    [SearchContext("p: t:texture", "asset", SearchViewFlags.ObjectPickerAdvancedUI | SearchViewFlags.OpenInBuilderMode)] public Texture myTextureWithBuilder;
    [SearchContext("p: t:texture", "asset", SearchViewFlags.OpenInBuilderMode | SearchViewFlags.DisableBuilderModeToggle)] public Texture myTextureWithBuilderNoToggle;
    [SearchContext("p: t:texture", "asset", SearchViewFlags.OpenInTextMode | SearchViewFlags.DisableBuilderModeToggle)] public Texture myTextureNoBuilderNoToggle;
    [SearchContext("t:currentobject{@type, 'texture'}", "asset")] public UnityEngine.Object myObjectWithContext;

    [SearchContext("light")] public UnityEngine.GameObject lightSearch;
    [SearchContext("camera", SearchViewFlags.None)] public UnityEngine.GameObject cameraSearch;

    public UnityEngine.GameObject noSearchContext;

#if USE_QUERY_BUILDER
    [SearchContext("p: t:<$list:Texture2D, [Texture2D, Material, Prefab]$>", "asset", SearchViewFlags.OpenInBuilderMode | SearchViewFlags.DisableBuilderModeToggle)] public UnityEngine.Object myObjectOfConstrainedTypes;
#endif
```

## SearchContextAttribute(string, string)

Search context constructor used to add some search context to an object field.

```csharp
public SearchContextAttribute(string query, string providerIdsCommaSeparated)
```

### Parameters

**** (\[string]\(https\://learn.microsoft.com/dotnet/api/system.string)): Initial search query text used to open the Object Picker window.**** (\[string]\(https\://learn.microsoft.com/dotnet/api/system.string)): A list of Search Provider IDs that will be used to create the search context.

### Examples

```csharp
    const string assetProviders = "adb;asset";
    const string objectProviders = "adb,asset,scene";
    const SearchViewFlags pickerMinimalUIFlags = SearchViewFlags.Packages |
        SearchViewFlags.IgnoreSavedSearches |
        SearchViewFlags.DisableSavedSearchQuery |
        SearchViewFlags.OpenInBuilderMode |
        SearchViewFlags.DisableBuilderModeToggle |
        SearchViewFlags.IgnoreSavedSearches;

    [SearchContext("cub", "adb", SearchViewFlags.ObjectPickerAdvancedUI | SearchViewFlags.ListView | SearchViewFlags.IgnoreSavedSearches)] public MonoScript myProjectScript;
    [SearchContext("script", "adb", SearchViewFlags.Packages | SearchViewFlags.CompactView)] public MonoScript myPackageScript;
    [SearchContext("t:texture", assetProviders, SearchViewFlags.ObjectPickerAdvancedUI | SearchViewFlags.GridView)] public Texture myTexture;
    [SearchContext("t:texture", assetProviders, SearchViewFlags.ObjectPickerAdvancedUI | SearchViewFlags.GridView)] public Texture[] myTextureArray;
    [SearchContext("t:texture", assetProviders, SearchViewFlags.ObjectPickerAdvancedUI | SearchViewFlags.GridView)] public List<Texture> myTextureList;
    [SearchContext("t:texture", "adb", SearchViewFlags.OpenInspectorPreview)] public Texture myTextureWithInspector;
    [SearchContext("non_mobile", SearchViewFlags.Centered)] public UnityEngine.Object myAnyObject;
    [SearchContext("non_mobile", SearchViewFlags.Debug)] public UnityEngine.Object myDebugObject;
    [SearchContext("t:mesh is:nested mesh", "asset")] public UnityEngine.Object assetMesh;
    [SearchContext("h: cube", "scene")] public MeshFilter sceneMesh;
    [SearchContext("shader:standard", assetProviders, SearchViewFlags.HideSearchBar)] public Material materialNoSearchBar;
    [SearchContext("select{p:t:material, @label, @size}", objectProviders, SearchViewFlags.TableView)] public Material selectMaterial;
    [SearchContext("Assets/Queries/textures.asset", assetProviders)] public Texture searchQueryPathTexture;
    [SearchContext("3c7f5dff3fb5d724688dfcecfb131b2a", assetProviders)] public Texture searchQueryGuidTexture;
    [SearchContext("non_mobile", SearchViewFlags.ObjectPickerAdvancedUI | SearchViewFlags.EnableSearchQuery)] public UnityEngine.Object myObjectWithSearchQueryEnabled;
    [SearchContext("non_mobile", SearchViewFlags.ObjectPickerAdvancedUI | SearchViewFlags.DisableInspectorPreview)] public UnityEngine.Object myObjectWithInspectorDisabled;
    [SearchContext("p: t:texture", "asset", SearchViewFlags.ObjectPickerAdvancedUI | SearchViewFlags.OpenInBuilderMode)] public Texture myTextureWithBuilder;
    [SearchContext("p: t:texture", "asset", SearchViewFlags.OpenInBuilderMode | SearchViewFlags.DisableBuilderModeToggle)] public Texture myTextureWithBuilderNoToggle;
    [SearchContext("p: t:texture", "asset", SearchViewFlags.OpenInTextMode | SearchViewFlags.DisableBuilderModeToggle)] public Texture myTextureNoBuilderNoToggle;
    [SearchContext("t:currentobject{@type, 'texture'}", "asset")] public UnityEngine.Object myObjectWithContext;

    [SearchContext("light")] public UnityEngine.GameObject lightSearch;
    [SearchContext("camera", SearchViewFlags.None)] public UnityEngine.GameObject cameraSearch;

    public UnityEngine.GameObject noSearchContext;

#if USE_QUERY_BUILDER
    [SearchContext("p: t:<$list:Texture2D, [Texture2D, Material, Prefab]$>", "asset", SearchViewFlags.OpenInBuilderMode | SearchViewFlags.DisableBuilderModeToggle)] public UnityEngine.Object myObjectOfConstrainedTypes;
#endif
```

## SearchContextAttribute(string, string, SearchViewFlags)

Search context constructor used to add some search context to an object field.

```csharp
public SearchContextAttribute(string query, string providerIdsCommaSeparated, SearchViewFlags flags)
```

### Parameters

**** (\[string]\(https\://learn.microsoft.com/dotnet/api/system.string)): Initial search query text used to open the Object Picker window.**** (\[string]\(https\://learn.microsoft.com/dotnet/api/system.string)): A list of Search Provider IDs that will be used to create the search context.**** (\[SearchViewFlags]\(/engine/6000.6/script-reference/unityengine/search/searchviewflags)): Search view flags used to open the Object Picker in various states.

### Examples

```csharp
    const string assetProviders = "adb;asset";
    const string objectProviders = "adb,asset,scene";
    const SearchViewFlags pickerMinimalUIFlags = SearchViewFlags.Packages |
        SearchViewFlags.IgnoreSavedSearches |
        SearchViewFlags.DisableSavedSearchQuery |
        SearchViewFlags.OpenInBuilderMode |
        SearchViewFlags.DisableBuilderModeToggle |
        SearchViewFlags.IgnoreSavedSearches;

    [SearchContext("cub", "adb", SearchViewFlags.ObjectPickerAdvancedUI | SearchViewFlags.ListView | SearchViewFlags.IgnoreSavedSearches)] public MonoScript myProjectScript;
    [SearchContext("script", "adb", SearchViewFlags.Packages | SearchViewFlags.CompactView)] public MonoScript myPackageScript;
    [SearchContext("t:texture", assetProviders, SearchViewFlags.ObjectPickerAdvancedUI | SearchViewFlags.GridView)] public Texture myTexture;
    [SearchContext("t:texture", assetProviders, SearchViewFlags.ObjectPickerAdvancedUI | SearchViewFlags.GridView)] public Texture[] myTextureArray;
    [SearchContext("t:texture", assetProviders, SearchViewFlags.ObjectPickerAdvancedUI | SearchViewFlags.GridView)] public List<Texture> myTextureList;
    [SearchContext("t:texture", "adb", SearchViewFlags.OpenInspectorPreview)] public Texture myTextureWithInspector;
    [SearchContext("non_mobile", SearchViewFlags.Centered)] public UnityEngine.Object myAnyObject;
    [SearchContext("non_mobile", SearchViewFlags.Debug)] public UnityEngine.Object myDebugObject;
    [SearchContext("t:mesh is:nested mesh", "asset")] public UnityEngine.Object assetMesh;
    [SearchContext("h: cube", "scene")] public MeshFilter sceneMesh;
    [SearchContext("shader:standard", assetProviders, SearchViewFlags.HideSearchBar)] public Material materialNoSearchBar;
    [SearchContext("select{p:t:material, @label, @size}", objectProviders, SearchViewFlags.TableView)] public Material selectMaterial;
    [SearchContext("Assets/Queries/textures.asset", assetProviders)] public Texture searchQueryPathTexture;
    [SearchContext("3c7f5dff3fb5d724688dfcecfb131b2a", assetProviders)] public Texture searchQueryGuidTexture;
    [SearchContext("non_mobile", SearchViewFlags.ObjectPickerAdvancedUI | SearchViewFlags.EnableSearchQuery)] public UnityEngine.Object myObjectWithSearchQueryEnabled;
    [SearchContext("non_mobile", SearchViewFlags.ObjectPickerAdvancedUI | SearchViewFlags.DisableInspectorPreview)] public UnityEngine.Object myObjectWithInspectorDisabled;
    [SearchContext("p: t:texture", "asset", SearchViewFlags.ObjectPickerAdvancedUI | SearchViewFlags.OpenInBuilderMode)] public Texture myTextureWithBuilder;
    [SearchContext("p: t:texture", "asset", SearchViewFlags.OpenInBuilderMode | SearchViewFlags.DisableBuilderModeToggle)] public Texture myTextureWithBuilderNoToggle;
    [SearchContext("p: t:texture", "asset", SearchViewFlags.OpenInTextMode | SearchViewFlags.DisableBuilderModeToggle)] public Texture myTextureNoBuilderNoToggle;
    [SearchContext("t:currentobject{@type, 'texture'}", "asset")] public UnityEngine.Object myObjectWithContext;

    [SearchContext("light")] public UnityEngine.GameObject lightSearch;
    [SearchContext("camera", SearchViewFlags.None)] public UnityEngine.GameObject cameraSearch;

    public UnityEngine.GameObject noSearchContext;

#if USE_QUERY_BUILDER
    [SearchContext("p: t:<$list:Texture2D, [Texture2D, Material, Prefab]$>", "asset", SearchViewFlags.OpenInBuilderMode | SearchViewFlags.DisableBuilderModeToggle)] public UnityEngine.Object myObjectOfConstrainedTypes;
#endif
```

## SearchContextAttribute(string, Type\[])

Search context constructor used to add some search context to an object field.

```csharp
public SearchContextAttribute(string query, params Type[] instantiableProviders)
```

### Parameters

**** (\[string]\(https\://learn.microsoft.com/dotnet/api/system.string)): Initial search query text used to open the Object Picker window.**** (\[Type\[]]\(https\://learn.microsoft.com/dotnet/api/system.type)): Search provider concrete types that will be instantiated and assigned to the Object Picker search context.

### Examples

```csharp
    const string assetProviders = "adb;asset";
    const string objectProviders = "adb,asset,scene";
    const SearchViewFlags pickerMinimalUIFlags = SearchViewFlags.Packages |
        SearchViewFlags.IgnoreSavedSearches |
        SearchViewFlags.DisableSavedSearchQuery |
        SearchViewFlags.OpenInBuilderMode |
        SearchViewFlags.DisableBuilderModeToggle |
        SearchViewFlags.IgnoreSavedSearches;

    [SearchContext("cub", "adb", SearchViewFlags.ObjectPickerAdvancedUI | SearchViewFlags.ListView | SearchViewFlags.IgnoreSavedSearches)] public MonoScript myProjectScript;
    [SearchContext("script", "adb", SearchViewFlags.Packages | SearchViewFlags.CompactView)] public MonoScript myPackageScript;
    [SearchContext("t:texture", assetProviders, SearchViewFlags.ObjectPickerAdvancedUI | SearchViewFlags.GridView)] public Texture myTexture;
    [SearchContext("t:texture", assetProviders, SearchViewFlags.ObjectPickerAdvancedUI | SearchViewFlags.GridView)] public Texture[] myTextureArray;
    [SearchContext("t:texture", assetProviders, SearchViewFlags.ObjectPickerAdvancedUI | SearchViewFlags.GridView)] public List<Texture> myTextureList;
    [SearchContext("t:texture", "adb", SearchViewFlags.OpenInspectorPreview)] public Texture myTextureWithInspector;
    [SearchContext("non_mobile", SearchViewFlags.Centered)] public UnityEngine.Object myAnyObject;
    [SearchContext("non_mobile", SearchViewFlags.Debug)] public UnityEngine.Object myDebugObject;
    [SearchContext("t:mesh is:nested mesh", "asset")] public UnityEngine.Object assetMesh;
    [SearchContext("h: cube", "scene")] public MeshFilter sceneMesh;
    [SearchContext("shader:standard", assetProviders, SearchViewFlags.HideSearchBar)] public Material materialNoSearchBar;
    [SearchContext("select{p:t:material, @label, @size}", objectProviders, SearchViewFlags.TableView)] public Material selectMaterial;
    [SearchContext("Assets/Queries/textures.asset", assetProviders)] public Texture searchQueryPathTexture;
    [SearchContext("3c7f5dff3fb5d724688dfcecfb131b2a", assetProviders)] public Texture searchQueryGuidTexture;
    [SearchContext("non_mobile", SearchViewFlags.ObjectPickerAdvancedUI | SearchViewFlags.EnableSearchQuery)] public UnityEngine.Object myObjectWithSearchQueryEnabled;
    [SearchContext("non_mobile", SearchViewFlags.ObjectPickerAdvancedUI | SearchViewFlags.DisableInspectorPreview)] public UnityEngine.Object myObjectWithInspectorDisabled;
    [SearchContext("p: t:texture", "asset", SearchViewFlags.ObjectPickerAdvancedUI | SearchViewFlags.OpenInBuilderMode)] public Texture myTextureWithBuilder;
    [SearchContext("p: t:texture", "asset", SearchViewFlags.OpenInBuilderMode | SearchViewFlags.DisableBuilderModeToggle)] public Texture myTextureWithBuilderNoToggle;
    [SearchContext("p: t:texture", "asset", SearchViewFlags.OpenInTextMode | SearchViewFlags.DisableBuilderModeToggle)] public Texture myTextureNoBuilderNoToggle;
    [SearchContext("t:currentobject{@type, 'texture'}", "asset")] public UnityEngine.Object myObjectWithContext;

    [SearchContext("light")] public UnityEngine.GameObject lightSearch;
    [SearchContext("camera", SearchViewFlags.None)] public UnityEngine.GameObject cameraSearch;

    public UnityEngine.GameObject noSearchContext;

#if USE_QUERY_BUILDER
    [SearchContext("p: t:<$list:Texture2D, [Texture2D, Material, Prefab]$>", "asset", SearchViewFlags.OpenInBuilderMode | SearchViewFlags.DisableBuilderModeToggle)] public UnityEngine.Object myObjectOfConstrainedTypes;
#endif
```

## SearchContextAttribute(string, SearchViewFlags, Type\[])

Search context constructor used to add some search context to an object field.

```csharp
public SearchContextAttribute(string query, SearchViewFlags flags, params Type[] instantiableProviders)
```

### Parameters

**** (\[string]\(https\://learn.microsoft.com/dotnet/api/system.string)): Initial search query text used to open the Object Picker window.**** (\[SearchViewFlags]\(/engine/6000.6/script-reference/unityengine/search/searchviewflags)): Search view flags used to open the Object Picker in various states.**** (\[Type\[]]\(https\://learn.microsoft.com/dotnet/api/system.type)): Search provider concrete types that will be instantiated and assigned to the Object Picker search context.

### Examples

```csharp
    const string assetProviders = "adb;asset";
    const string objectProviders = "adb,asset,scene";
    const SearchViewFlags pickerMinimalUIFlags = SearchViewFlags.Packages |
        SearchViewFlags.IgnoreSavedSearches |
        SearchViewFlags.DisableSavedSearchQuery |
        SearchViewFlags.OpenInBuilderMode |
        SearchViewFlags.DisableBuilderModeToggle |
        SearchViewFlags.IgnoreSavedSearches;

    [SearchContext("cub", "adb", SearchViewFlags.ObjectPickerAdvancedUI | SearchViewFlags.ListView | SearchViewFlags.IgnoreSavedSearches)] public MonoScript myProjectScript;
    [SearchContext("script", "adb", SearchViewFlags.Packages | SearchViewFlags.CompactView)] public MonoScript myPackageScript;
    [SearchContext("t:texture", assetProviders, SearchViewFlags.ObjectPickerAdvancedUI | SearchViewFlags.GridView)] public Texture myTexture;
    [SearchContext("t:texture", assetProviders, SearchViewFlags.ObjectPickerAdvancedUI | SearchViewFlags.GridView)] public Texture[] myTextureArray;
    [SearchContext("t:texture", assetProviders, SearchViewFlags.ObjectPickerAdvancedUI | SearchViewFlags.GridView)] public List<Texture> myTextureList;
    [SearchContext("t:texture", "adb", SearchViewFlags.OpenInspectorPreview)] public Texture myTextureWithInspector;
    [SearchContext("non_mobile", SearchViewFlags.Centered)] public UnityEngine.Object myAnyObject;
    [SearchContext("non_mobile", SearchViewFlags.Debug)] public UnityEngine.Object myDebugObject;
    [SearchContext("t:mesh is:nested mesh", "asset")] public UnityEngine.Object assetMesh;
    [SearchContext("h: cube", "scene")] public MeshFilter sceneMesh;
    [SearchContext("shader:standard", assetProviders, SearchViewFlags.HideSearchBar)] public Material materialNoSearchBar;
    [SearchContext("select{p:t:material, @label, @size}", objectProviders, SearchViewFlags.TableView)] public Material selectMaterial;
    [SearchContext("Assets/Queries/textures.asset", assetProviders)] public Texture searchQueryPathTexture;
    [SearchContext("3c7f5dff3fb5d724688dfcecfb131b2a", assetProviders)] public Texture searchQueryGuidTexture;
    [SearchContext("non_mobile", SearchViewFlags.ObjectPickerAdvancedUI | SearchViewFlags.EnableSearchQuery)] public UnityEngine.Object myObjectWithSearchQueryEnabled;
    [SearchContext("non_mobile", SearchViewFlags.ObjectPickerAdvancedUI | SearchViewFlags.DisableInspectorPreview)] public UnityEngine.Object myObjectWithInspectorDisabled;
    [SearchContext("p: t:texture", "asset", SearchViewFlags.ObjectPickerAdvancedUI | SearchViewFlags.OpenInBuilderMode)] public Texture myTextureWithBuilder;
    [SearchContext("p: t:texture", "asset", SearchViewFlags.OpenInBuilderMode | SearchViewFlags.DisableBuilderModeToggle)] public Texture myTextureWithBuilderNoToggle;
    [SearchContext("p: t:texture", "asset", SearchViewFlags.OpenInTextMode | SearchViewFlags.DisableBuilderModeToggle)] public Texture myTextureNoBuilderNoToggle;
    [SearchContext("t:currentobject{@type, 'texture'}", "asset")] public UnityEngine.Object myObjectWithContext;

    [SearchContext("light")] public UnityEngine.GameObject lightSearch;
    [SearchContext("camera", SearchViewFlags.None)] public UnityEngine.GameObject cameraSearch;

    public UnityEngine.GameObject noSearchContext;

#if USE_QUERY_BUILDER
    [SearchContext("p: t:<$list:Texture2D, [Texture2D, Material, Prefab]$>", "asset", SearchViewFlags.OpenInBuilderMode | SearchViewFlags.DisableBuilderModeToggle)] public UnityEngine.Object myObjectOfConstrainedTypes;
#endif
```

## SearchContextAttribute(string, SearchViewFlags, string, Type\[])

Search context constructor used to add some search context to an object field.

```csharp
public SearchContextAttribute(string query, SearchViewFlags flags, string providerIdsCommaSeparated, params Type[] instantiableProviders)
```

### Parameters

**** (\[string]\(https\://learn.microsoft.com/dotnet/api/system.string)): Initial search query text used to open the Object Picker window.**** (\[SearchViewFlags]\(/engine/6000.6/script-reference/unityengine/search/searchviewflags)): Search view flags used to open the Object Picker in various states.**** (\[string]\(https\://learn.microsoft.com/dotnet/api/system.string)): A list of Search Provider IDs that will be used to create the search context.**** (\[Type\[]]\(https\://learn.microsoft.com/dotnet/api/system.type)): Search provider concrete types that will be instantiated and assigned to the Object Picker search context.

### Examples

```csharp
    const string assetProviders = "adb;asset";
    const string objectProviders = "adb,asset,scene";
    const SearchViewFlags pickerMinimalUIFlags = SearchViewFlags.Packages |
        SearchViewFlags.IgnoreSavedSearches |
        SearchViewFlags.DisableSavedSearchQuery |
        SearchViewFlags.OpenInBuilderMode |
        SearchViewFlags.DisableBuilderModeToggle |
        SearchViewFlags.IgnoreSavedSearches;

    [SearchContext("cub", "adb", SearchViewFlags.ObjectPickerAdvancedUI | SearchViewFlags.ListView | SearchViewFlags.IgnoreSavedSearches)] public MonoScript myProjectScript;
    [SearchContext("script", "adb", SearchViewFlags.Packages | SearchViewFlags.CompactView)] public MonoScript myPackageScript;
    [SearchContext("t:texture", assetProviders, SearchViewFlags.ObjectPickerAdvancedUI | SearchViewFlags.GridView)] public Texture myTexture;
    [SearchContext("t:texture", assetProviders, SearchViewFlags.ObjectPickerAdvancedUI | SearchViewFlags.GridView)] public Texture[] myTextureArray;
    [SearchContext("t:texture", assetProviders, SearchViewFlags.ObjectPickerAdvancedUI | SearchViewFlags.GridView)] public List<Texture> myTextureList;
    [SearchContext("t:texture", "adb", SearchViewFlags.OpenInspectorPreview)] public Texture myTextureWithInspector;
    [SearchContext("non_mobile", SearchViewFlags.Centered)] public UnityEngine.Object myAnyObject;
    [SearchContext("non_mobile", SearchViewFlags.Debug)] public UnityEngine.Object myDebugObject;
    [SearchContext("t:mesh is:nested mesh", "asset")] public UnityEngine.Object assetMesh;
    [SearchContext("h: cube", "scene")] public MeshFilter sceneMesh;
    [SearchContext("shader:standard", assetProviders, SearchViewFlags.HideSearchBar)] public Material materialNoSearchBar;
    [SearchContext("select{p:t:material, @label, @size}", objectProviders, SearchViewFlags.TableView)] public Material selectMaterial;
    [SearchContext("Assets/Queries/textures.asset", assetProviders)] public Texture searchQueryPathTexture;
    [SearchContext("3c7f5dff3fb5d724688dfcecfb131b2a", assetProviders)] public Texture searchQueryGuidTexture;
    [SearchContext("non_mobile", SearchViewFlags.ObjectPickerAdvancedUI | SearchViewFlags.EnableSearchQuery)] public UnityEngine.Object myObjectWithSearchQueryEnabled;
    [SearchContext("non_mobile", SearchViewFlags.ObjectPickerAdvancedUI | SearchViewFlags.DisableInspectorPreview)] public UnityEngine.Object myObjectWithInspectorDisabled;
    [SearchContext("p: t:texture", "asset", SearchViewFlags.ObjectPickerAdvancedUI | SearchViewFlags.OpenInBuilderMode)] public Texture myTextureWithBuilder;
    [SearchContext("p: t:texture", "asset", SearchViewFlags.OpenInBuilderMode | SearchViewFlags.DisableBuilderModeToggle)] public Texture myTextureWithBuilderNoToggle;
    [SearchContext("p: t:texture", "asset", SearchViewFlags.OpenInTextMode | SearchViewFlags.DisableBuilderModeToggle)] public Texture myTextureNoBuilderNoToggle;
    [SearchContext("t:currentobject{@type, 'texture'}", "asset")] public UnityEngine.Object myObjectWithContext;

    [SearchContext("light")] public UnityEngine.GameObject lightSearch;
    [SearchContext("camera", SearchViewFlags.None)] public UnityEngine.GameObject cameraSearch;

    public UnityEngine.GameObject noSearchContext;

#if USE_QUERY_BUILDER
    [SearchContext("p: t:<$list:Texture2D, [Texture2D, Material, Prefab]$>", "asset", SearchViewFlags.OpenInBuilderMode | SearchViewFlags.DisableBuilderModeToggle)] public UnityEngine.Object myObjectOfConstrainedTypes;
#endif
```
