< Summary

Class:Microsoft.Azure.CognitiveServices.Search.CustomSearch.CustomInstanceExtensions
Assembly:Microsoft.Azure.CognitiveServices.Search.BingCustomSearch
File(s):C:\Git\azure-sdk-for-net\sdk\cognitiveservices\Search.BingCustomSearch\src\Generated\CustomSearch\CustomInstanceExtensions.cs
Covered lines:3
Uncovered lines:0
Coverable lines:3
Total lines:242
Line coverage:100% (3 of 3)
Covered branches:0
Total branches:0

Metrics

MethodCyclomatic complexity Line coverage Branch coverage
SearchAsync()-100%100%

File(s)

C:\Git\azure-sdk-for-net\sdk\cognitiveservices\Search.BingCustomSearch\src\Generated\CustomSearch\CustomInstanceExtensions.cs

#LineLine coverage
 1// <auto-generated>
 2// Code generated by Microsoft (R) AutoRest Code Generator.
 3// Changes may cause incorrect behavior and will be lost if the code is
 4// regenerated.
 5// </auto-generated>
 6
 7namespace Microsoft.Azure.CognitiveServices.Search.CustomSearch
 8{
 9    using Models;
 10    using System.Threading;
 11    using System.Threading.Tasks;
 12
 13    /// <summary>
 14    /// Extension methods for CustomInstance.
 15    /// </summary>
 16    public static partial class CustomInstanceExtensions
 17    {
 18            /// <summary>
 19            /// The Custom Search API lets you send a search query to Bing and get back web
 20            /// pages found in your custom view of the web.
 21            /// </summary>
 22            /// <param name='operations'>
 23            /// The operations group for this extension method.
 24            /// </param>
 25            /// <param name='customConfig'>
 26            /// The identifier for the custom search configuration
 27            /// </param>
 28            /// <param name='query'>
 29            /// The user's search query term. The term may not be empty. The term may
 30            /// contain Bing Advanced Operators. For example, to limit results to a
 31            /// specific domain, use the site: operator.
 32            /// </param>
 33            /// <param name='acceptLanguage'>
 34            /// A comma-delimited list of one or more languages to use for user interface
 35            /// strings. The list is in decreasing order of preference. For additional
 36            /// information, including expected format, see
 37            /// [RFC2616](http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html). This
 38            /// header and the setLang query parameter are mutually exclusive; do not
 39            /// specify both. If you set this header, you must also specify the cc query
 40            /// parameter. Bing will use the first supported language it finds from the
 41            /// list, and combine that language with the cc parameter value to determine
 42            /// the market to return results for. If the list does not include a supported
 43            /// language, Bing will find the closest language and market that supports the
 44            /// request, and may use an aggregated or default market for the results
 45            /// instead of a specified one. You should use this header and the cc query
 46            /// parameter only if you specify multiple languages; otherwise, you should use
 47            /// the mkt and setLang query parameters. A user interface string is a string
 48            /// that's used as a label in a user interface. There are very few user
 49            /// interface strings in the JSON response objects. Any links in the response
 50            /// objects to Bing.com properties will apply the specified language.
 51            /// </param>
 52            /// <param name='userAgent'>
 53            /// The user agent originating the request. Bing uses the user agent to provide
 54            /// mobile users with an optimized experience. Although optional, you are
 55            /// strongly encouraged to always specify this header. The user-agent should be
 56            /// the same string that any commonly used browser would send. For information
 57            /// about user agents, see [RFC
 58            /// 2616](http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html).
 59            /// </param>
 60            /// <param name='clientId'>
 61            /// Bing uses this header to provide users with consistent behavior across Bing
 62            /// API calls. Bing often flights new features and improvements, and it uses
 63            /// the client ID as a key for assigning traffic on different flights. If you
 64            /// do not use the same client ID for a user across multiple requests, then
 65            /// Bing may assign the user to multiple conflicting flights. Being assigned to
 66            /// multiple conflicting flights can lead to an inconsistent user experience.
 67            /// For example, if the second request has a different flight assignment than
 68            /// the first, the experience may be unexpected. Also, Bing can use the client
 69            /// ID to tailor web results to that client ID’s search history, providing a
 70            /// richer experience for the user. Bing also uses this header to help improve
 71            /// result rankings by analyzing the activity generated by a client ID. The
 72            /// relevance improvements help with better quality of results delivered by
 73            /// Bing APIs and in turn enables higher click-through rates for the API
 74            /// consumer. IMPORTANT: Although optional, you should consider this header
 75            /// required. Persisting the client ID across multiple requests for the same
 76            /// end user and device combination enables 1) the API consumer to receive a
 77            /// consistent user experience, and 2) higher click-through rates via better
 78            /// quality of results from the Bing APIs. Each user that uses your application
 79            /// on the device must have a unique, Bing generated client ID. If you do not
 80            /// include this header in the request, Bing generates an ID and returns it in
 81            /// the X-MSEdge-ClientID response header. The only time that you should NOT
 82            /// include this header in a request is the first time the user uses your app
 83            /// on that device. Use the client ID for each Bing API request that your app
 84            /// makes for this user on the device. Persist the client ID. To persist the ID
 85            /// in a browser app, use a persistent HTTP cookie to ensure the ID is used
 86            /// across all sessions. Do not use a session cookie. For other apps such as
 87            /// mobile apps, use the device's persistent storage to persist the ID. The
 88            /// next time the user uses your app on that device, get the client ID that you
 89            /// persisted. Bing responses may or may not include this header. If the
 90            /// response includes this header, capture the client ID and use it for all
 91            /// subsequent Bing requests for the user on that device. If you include the
 92            /// X-MSEdge-ClientID, you must not include cookies in the request.
 93            /// </param>
 94            /// <param name='clientIp'>
 95            /// The IPv4 or IPv6 address of the client device. The IP address is used to
 96            /// discover the user's location. Bing uses the location information to
 97            /// determine safe search behavior. Although optional, you are encouraged to
 98            /// always specify this header and the X-Search-Location header. Do not
 99            /// obfuscate the address (for example, by changing the last octet to 0).
 100            /// Obfuscating the address results in the location not being anywhere near the
 101            /// device's actual location, which may result in Bing serving erroneous
 102            /// results.
 103            /// </param>
 104            /// <param name='location'>
 105            /// A semicolon-delimited list of key/value pairs that describe the client's
 106            /// geographical location. Bing uses the location information to determine safe
 107            /// search behavior and to return relevant local content. Specify the key/value
 108            /// pair as &lt;key&gt;:&lt;value&gt;. The following are the keys that you use
 109            /// to specify the user's location. lat (required): The latitude of the
 110            /// client's location, in degrees. The latitude must be greater than or equal
 111            /// to -90.0 and less than or equal to +90.0. Negative values indicate southern
 112            /// latitudes and positive values indicate northern latitudes. long (required):
 113            /// The longitude of the client's location, in degrees. The longitude must be
 114            /// greater than or equal to -180.0 and less than or equal to +180.0. Negative
 115            /// values indicate western longitudes and positive values indicate eastern
 116            /// longitudes. re (required): The radius, in meters, which specifies the
 117            /// horizontal accuracy of the coordinates. Pass the value returned by the
 118            /// device's location service. Typical values might be 22m for GPS/Wi-Fi, 380m
 119            /// for cell tower triangulation, and 18,000m for reverse IP lookup. ts
 120            /// (optional): The UTC UNIX timestamp of when the client was at the location.
 121            /// (The UNIX timestamp is the number of seconds since January 1, 1970.) head
 122            /// (optional): The client's relative heading or direction of travel. Specify
 123            /// the direction of travel as degrees from 0 through 360, counting clockwise
 124            /// relative to true north. Specify this key only if the sp key is nonzero. sp
 125            /// (optional): The horizontal velocity (speed), in meters per second, that the
 126            /// client device is traveling. alt (optional): The altitude of the client
 127            /// device, in meters. are (optional): The radius, in meters, that specifies
 128            /// the vertical accuracy of the coordinates. Specify this key only if you
 129            /// specify the alt key. Although many of the keys are optional, the more
 130            /// information that you provide, the more accurate the location results are.
 131            /// Although optional, you are encouraged to always specify the user's
 132            /// geographical location. Providing the location is especially important if
 133            /// the client's IP address does not accurately reflect the user's physical
 134            /// location (for example, if the client uses VPN). For optimal results, you
 135            /// should include this header and the X-MSEdge-ClientIP header, but at a
 136            /// minimum, you should include this header.
 137            /// </param>
 138            /// <param name='countryCode'>
 139            /// A 2-character country code of the country where the results come from. This
 140            /// API supports only the United States market. If you specify this query
 141            /// parameter, it must be set to us. If you set this parameter, you must also
 142            /// specify the Accept-Language header. Bing uses the first supported language
 143            /// it finds from the languages list, and combine that language with the
 144            /// country code that you specify to determine the market to return results
 145            /// for. If the languages list does not include a supported language, Bing
 146            /// finds the closest language and market that supports the request, or it may
 147            /// use an aggregated or default market for the results instead of a specified
 148            /// one. You should use this query parameter and the Accept-Language query
 149            /// parameter only if you specify multiple languages; otherwise, you should use
 150            /// the mkt and setLang query parameters. This parameter and the mkt query
 151            /// parameter are mutually exclusive—do not specify both.
 152            /// </param>
 153            /// <param name='count'>
 154            /// The number of search results to return in the response. The default is 10
 155            /// and the maximum value is 50. The actual number delivered may be less than
 156            /// requested.Use this parameter along with the offset parameter to page
 157            /// results.For example, if your user interface displays 10 search results per
 158            /// page, set count to 10 and offset to 0 to get the first page of results. For
 159            /// each subsequent page, increment offset by 10 (for example, 0, 10, 20). It
 160            /// is possible for multiple pages to include some overlap in results.
 161            /// </param>
 162            /// <param name='market'>
 163            /// The market where the results come from. Typically, mkt is the country where
 164            /// the user is making the request from. However, it could be a different
 165            /// country if the user is not located in a country where Bing delivers
 166            /// results. The market must be in the form &lt;language code&gt;-&lt;country
 167            /// code&gt;. For example, en-US. The string is case insensitive. If known, you
 168            /// are encouraged to always specify the market. Specifying the market helps
 169            /// Bing route the request and return an appropriate and optimal response. If
 170            /// you specify a market that is not listed in Market Codes, Bing uses a best
 171            /// fit market code based on an internal mapping that is subject to change.
 172            /// This parameter and the cc query parameter are mutually exclusive—do not
 173            /// specify both.
 174            /// </param>
 175            /// <param name='offset'>
 176            /// The zero-based offset that indicates the number of search results to skip
 177            /// before returning results. The default is 0. The offset should be less than
 178            /// (totalEstimatedMatches - count). Use this parameter along with the count
 179            /// parameter to page results. For example, if your user interface displays 10
 180            /// search results per page, set count to 10 and offset to 0 to get the first
 181            /// page of results. For each subsequent page, increment offset by 10 (for
 182            /// example, 0, 10, 20). it is possible for multiple pages to include some
 183            /// overlap in results.
 184            /// </param>
 185            /// <param name='safeSearch'>
 186            /// A filter used to filter adult content. Off: Return webpages with adult
 187            /// text, images, or videos. Moderate: Return webpages with adult text, but not
 188            /// adult images or videos. Strict: Do not return webpages with adult text,
 189            /// images, or videos. The default is Moderate. If the request comes from a
 190            /// market that Bing's adult policy requires that safeSearch is set to Strict,
 191            /// Bing ignores the safeSearch value and uses Strict. If you use the site:
 192            /// query operator, there is the chance that the response may contain adult
 193            /// content regardless of what the safeSearch query parameter is set to. Use
 194            /// site: only if you are aware of the content on the site and your scenario
 195            /// supports the possibility of adult content. Possible values include: 'Off',
 196            /// 'Moderate', 'Strict'
 197            /// </param>
 198            /// <param name='setLang'>
 199            /// The language to use for user interface strings. Specify the language using
 200            /// the ISO 639-1 2-letter language code. For example, the language code for
 201            /// English is EN. The default is EN (English). Although optional, you should
 202            /// always specify the language. Typically, you set setLang to the same
 203            /// language specified by mkt unless the user wants the user interface strings
 204            /// displayed in a different language. This parameter and the Accept-Language
 205            /// header are mutually exclusive; do not specify both. A user interface string
 206            /// is a string that's used as a label in a user interface. There are few user
 207            /// interface strings in the JSON response objects. Also, any links to Bing.com
 208            /// properties in the response objects apply the specified language.
 209            /// </param>
 210            /// <param name='textDecorations'>
 211            /// A Boolean value that determines whether display strings should contain
 212            /// decoration markers such as hit highlighting characters. If true, the
 213            /// strings may include markers. The default is false. To specify whether to
 214            /// use Unicode characters or HTML tags as the markers, see the textFormat
 215            /// query parameter.
 216            /// </param>
 217            /// <param name='textFormat'>
 218            /// The type of markers to use for text decorations (see the textDecorations
 219            /// query parameter). Possible values are Raw—Use Unicode characters to mark
 220            /// content that needs special formatting. The Unicode characters are in the
 221            /// range E000 through E019. For example, Bing uses E000 and E001 to mark the
 222            /// beginning and end of query terms for hit highlighting. HTML—Use HTML tags
 223            /// to mark content that needs special formatting. For example, use &lt;b&gt;
 224            /// tags to highlight query terms in display strings. The default is Raw. For
 225            /// display strings that contain escapable HTML characters such as &lt;, &gt;,
 226            /// and &amp;, if textFormat is set to HTML, Bing escapes the characters as
 227            /// appropriate (for example, &lt; is escaped to &amp;lt;). Possible values
 228            /// include: 'Raw', 'Html'
 229            /// </param>
 230            /// <param name='cancellationToken'>
 231            /// The cancellation token.
 232            /// </param>
 233            public static async Task<SearchResponse> SearchAsync(this ICustomInstance operations, string customConfig, s
 234            {
 2235                using (var _result = await operations.SearchWithHttpMessagesAsync(customConfig, query, acceptLanguage, u
 236                {
 2237                    return _result.Body;
 238                }
 2239            }
 240
 241    }
 242}

Methods/Properties

SearchAsync()