Zwykle są to różnice w ustawieniach SET, prowadzące do różnych planów. W Management Studio procedura prawdopodobnie działa z tym samym ustawienia, jakie obowiązywały w momencie jego utworzenia.
Spójrz na sys.dm_exec_sessions dla aplikacji ASP.Net i sesji SSMS. Zaryzykuję przypuszczenie, że przynajmniej jeden z twoich SET
ustawienia są inne. Może to przyczynić się do różnych planów (ostatecznie przypisuje się to podsłuchiwaniu parametrów), a strona aplikacji zwykle kończy się gorzej.
Zobacz te inne pytania, aby uzyskać więcej informacji:
- Procedura składowana powolna przy wywołaniu z sieci, szybka z Management Studio
- Procedura przekracza limit czasu z ADO.NET, ale nie w SSMS
- Przekroczono limit czasu zapytania po wykonaniu z sieci, ale superszybko po wykonaniu z SSMS
- ADO . NET vs. SQL Server Management Studio — ADO działa gorzej
- sql działa szybko w ssms wolno w asp.net
Przeczytaj także artykuł Erlanda Sommarskoga, Wolno w aplikacji, szybko w SSMS?