Reference documentation and code samples for the Discovery Engine v1 API class ControlService.
Service for performing CRUD operations on Controls.
Controls allow for custom logic to be implemented in the serving path.
Controls need to be attached to a Serving Config to be considered during a
request.
public static void BindService(ServiceBinderBase serviceBinder, ControlService.ControlServiceBase serviceImpl)
Register service method with a service binder with or without implementation. Useful when customizing the service binding logic.
Note: this method is part of an experimental API that can change or be removed without any prior notice.
[[["Easy to understand","easyToUnderstand","thumb-up"],["Solved my problem","solvedMyProblem","thumb-up"],["Other","otherUp","thumb-up"]],[["Hard to understand","hardToUnderstand","thumb-down"],["Incorrect information or sample code","incorrectInformationOrSampleCode","thumb-down"],["Missing the information/samples I need","missingTheInformationSamplesINeed","thumb-down"],["Other","otherDown","thumb-down"]],["Last updated 2025-08-28 UTC."],[[["\u003cp\u003eThe latest version of the \u003ccode\u003eControlService\u003c/code\u003e API class is 1.6.0, as seen by the version history provided.\u003c/p\u003e\n"],["\u003cp\u003e\u003ccode\u003eControlService\u003c/code\u003e in the Discovery Engine v1 API is used to perform Create, Read, Update, and Delete (CRUD) operations on Controls.\u003c/p\u003e\n"],["\u003cp\u003eControls in \u003ccode\u003eControlService\u003c/code\u003e allow for implementing custom logic in the serving path, requiring them to be attached to a Serving Config to be used during a request.\u003c/p\u003e\n"],["\u003cp\u003eThe \u003ccode\u003eControlService\u003c/code\u003e class has two static methods, \u003ccode\u003eBindService(ControlServiceBase)\u003c/code\u003e and \u003ccode\u003eBindService(ServiceBinderBase, ControlServiceBase)\u003c/code\u003e, which are used to create or register a service definition or method.\u003c/p\u003e\n"]]],[],null,["# Discovery Engine v1 API - Class ControlService (1.9.0)\n\nVersion latestkeyboard_arrow_down\n\n- [1.9.0 (latest)](/dotnet/docs/reference/Google.Cloud.DiscoveryEngine.V1/latest/Google.Cloud.DiscoveryEngine.V1.ControlService)\n- [1.8.0](/dotnet/docs/reference/Google.Cloud.DiscoveryEngine.V1/1.8.0/Google.Cloud.DiscoveryEngine.V1.ControlService)\n- [1.7.0](/dotnet/docs/reference/Google.Cloud.DiscoveryEngine.V1/1.7.0/Google.Cloud.DiscoveryEngine.V1.ControlService)\n- [1.6.0](/dotnet/docs/reference/Google.Cloud.DiscoveryEngine.V1/1.6.0/Google.Cloud.DiscoveryEngine.V1.ControlService)\n- [1.5.0](/dotnet/docs/reference/Google.Cloud.DiscoveryEngine.V1/1.5.0/Google.Cloud.DiscoveryEngine.V1.ControlService)\n- [1.4.0](/dotnet/docs/reference/Google.Cloud.DiscoveryEngine.V1/1.4.0/Google.Cloud.DiscoveryEngine.V1.ControlService)\n- [1.3.0](/dotnet/docs/reference/Google.Cloud.DiscoveryEngine.V1/1.3.0/Google.Cloud.DiscoveryEngine.V1.ControlService)\n- [1.2.0](/dotnet/docs/reference/Google.Cloud.DiscoveryEngine.V1/1.2.0/Google.Cloud.DiscoveryEngine.V1.ControlService)\n- [1.1.0](/dotnet/docs/reference/Google.Cloud.DiscoveryEngine.V1/1.1.0/Google.Cloud.DiscoveryEngine.V1.ControlService)\n- [1.0.0-beta06](/dotnet/docs/reference/Google.Cloud.DiscoveryEngine.V1/1.0.0-beta06/Google.Cloud.DiscoveryEngine.V1.ControlService) \n\n public static class ControlService\n\nReference documentation and code samples for the Discovery Engine v1 API class ControlService.\n\nService for performing CRUD operations on Controls.\nControls allow for custom logic to be implemented in the serving path.\nControls need to be attached to a Serving Config to be considered during a\nrequest. \n\nInheritance\n-----------\n\n[object](https://learn.microsoft.com/dotnet/api/system.object) \\\u003e ControlService \n\nInherited Members\n-----------------\n\n[object.GetHashCode()](https://learn.microsoft.com/dotnet/api/system.object.gethashcode) \n[object.GetType()](https://learn.microsoft.com/dotnet/api/system.object.gettype) \n[object.MemberwiseClone()](https://learn.microsoft.com/dotnet/api/system.object.memberwiseclone) \n[object.ToString()](https://learn.microsoft.com/dotnet/api/system.object.tostring)\n\nNamespace\n---------\n\n[Google.Cloud.DiscoveryEngine.V1](/dotnet/docs/reference/Google.Cloud.DiscoveryEngine.V1/latest/Google.Cloud.DiscoveryEngine.V1)\n\nAssembly\n--------\n\nGoogle.Cloud.DiscoveryEngine.V1.dll\n\nMethods\n-------\n\n### BindService(ControlServiceBase)\n\n public static ServerServiceDefinition BindService(ControlService.ControlServiceBase serviceImpl)\n\nCreates service definition that can be registered with a server\n\n### BindService(ServiceBinderBase, ControlServiceBase)\n\n public static void BindService(ServiceBinderBase serviceBinder, ControlService.ControlServiceBase serviceImpl)\n\nRegister service method with a service binder with or without implementation. Useful when customizing the service binding logic.\nNote: this method is part of an experimental API that can change or be removed without any prior notice."]]