Normalerweise sind dies SET-Einstellungsunterschiede, die zu unterschiedlichen Plänen führen. Im Management Studio läuft die Prozedur vermutlich gleich Einstellungen, die zum Zeitpunkt der Erstellung vorhanden waren.
Sehen Sie sich sys.dm_exec_sessions für Ihre ASP.Net-Anwendung und für Ihre SSMS-Sitzung an. Ich wage zu vermuten, dass mindestens einer Ihrer SET
Einstellungen ist anders. Dies kann zu unterschiedlichen Plänen beitragen (letztendlich wird dies dem Parameter-Sniffing zugeschrieben) und die App-Seite endet normalerweise schlechter.
Weitere Einzelheiten finden Sie in diesen anderen Fragen:
- Gespeicherte Prozedur langsam beim Aufruf aus dem Web, schnell aus Management Studio
- Prozedurzeitüberschreitung von ADO.NET, aber nicht in SSMS
- Abfragezeitüberschreitung bei Ausführung aus dem Web, aber superschnell bei Ausführung aus SSMS
- ADO . NET vs. SQL Server Management Studio – ADO schneidet schlechter ab
- sql läuft schnell hinein ssms langsam in asp.net
Lesen Sie auch den Artikel von Erland Sommarskog, Langsam in der Anwendung, schnell in SSMS?