Хочу углубить свои знания ADO.NET - читая код Enterprise Library, я заметил, что они используют технику, называемую «кэширование параметров»
Может кто-нибудь объяснить мне, как это улучшает производительность и какие сценарии это помогает?
Является ли выигрыш в производительности исключительно стоимостью конструирования объектов DbParameter или что-то еще происходит на стороне SQL Server в плане плана запросов?
Я думаю, что в первый раз, когда вы собираете объект DbCommand и соединяетесь с соответствующими объектами DbParameter, на этом этапе SQL Server кэшировал план выполнения и последующие вызовы той же процедуры с теми же шаблонами параметров. будет повторно использовать существующий кэшированный план выполнения на сервере?