Обикновено това са разлики в настройките на SET, водещи до различни планове. В Management Studio процедурата вероятно се изпълнява с същото настройки, каквито са били при създаването му.
Разгледайте sys.dm_exec_sessions за вашето ASP.Net приложение и за вашата SSMS сесия. Ще рискувам да предположа, че поне един от вашите SET
настройките са различни. Това може да допринесе за различни планове (в крайна сметка това се приписва на надушване на параметри) и страната на приложението обикновено се оказва по-зле.
Вижте тези други въпроси за много повече подробности:
- Запомнената процедура е бавна при извикване от мрежата, бърза от Management Studio
- Изтича времето за изчакване на процедурата от ADO.NET, но не и в SSMS
- Времето за изчакване на заявката изтича, когато се изпълнява от мрежата, но супер бързо, когато се изпълнява от SSMS
- ADO. NET срещу SQL Server Management Studio - ADO се представя по-лошо
- sql работи бързо в ssms бавен в asp.net
И също така прочетете статията на Erland Sommarskog, Бавно в приложението, бързо в SSMS?