Udostępnij za pośrednictwem


SqlCommand.EnableOptimizedParameterBinding Właściwość

Definicja

Pobiera lub ustawia wartość wskazującą, czy obiekt polecenia powinien zoptymalizować wydajność parametrów, wyłączając wskazówki wyjściowe i InputOutput podczas przesyłania polecenia do SQL Server.

public:
 property bool EnableOptimizedParameterBinding { bool get(); void set(bool value); };
public bool EnableOptimizedParameterBinding { get; set; }
member this.EnableOptimizedParameterBinding : bool with get, set
Public Property EnableOptimizedParameterBinding As Boolean

Wartość właściwości

Wartość wskazująca, czy obiekt polecenia powinien zoptymalizować wydajność parametrów przez wyłączenie wskazówek parametrów Output i InputOuput podczas przesyłania polecenia do SQL Server. Wartość domyślna to false.

Uwagi

Należy ustawić wartość dla tej właściwości przed wykonaniem polecenia, aby zaczęły obowiązywać.

Po przesłaniu polecenia do serwera z parametrami lista nazw parametrów jest wysyłana w ramach przesyłania. Lista jest używana na serwerze w celu dopasowania parametrów Output i InputOutput do wyników wykonywania zapytania, aby wartości mogły zostać zwrócone do obiektu wywołującego. Ta opcja wyłącza konstrukcję i przesyłanie listy nazw parametrów, a w konsekwencji wyłącza użycie parametrów Output i InputOutput. Ten parametr zwracany nie ma wpływu na tę opcję.

Polecenie wysyłane z tą opcją zmienia sposób obsługi parametrów na serwerze, ponieważ nie ma potrzeby obsługi mapy parametrów wyjściowych. Wynikiem tej zmiany jest to, że zapytania z dużą liczbą parametrów wejściowych mogą być wykonywane znacznie szybciej.

Najmniejsza liczba parametrów, w których będzie to obowiązywać, zależy od indywidualnej sytuacji i powinna zostać wykryta przez pomiar czasu trwania zapytania z włączoną opcją i bez jej włączenia. Każde zapytanie z więcej niż 24 parametrami może pokazywać krótszy ogólny czas trwania zapytania. Zapytania z liczbą parametrów niższe niż 24 są mało prawdopodobne, aby pokazać różnicę.

Uwaga

Jeśli opcja jest włączona, a parametr z parametrem Direction Output lub InputOutput znajduje się w kolekcji Parameters, wyjątek InvalidOperationException zostanie zgłoszony po wykonaniu polecenia.

Dotyczy