C# 哪些环境变量会影响存储过程的成功执行?

C# 哪些环境变量会影响存储过程的成功执行?,c#,asp.net,sql,stored-procedures,C#,Asp.net,Sql,Stored Procedures,其中,环境要么是通过ASP.NET网站调用的存储过程,要么是直接从SQL management studio中调用的存储过程 我开发了一个复制例程,它将文件夹和文件的层次结构复制到指定的目标,例如从指定的源复制到指定的目标。我使用递归解决方案(即使用嵌套的存储过程调用)和另一种方法实现了这一点,该方法首先展平文件夹和文件的层次结构,然后通过查找在复制到其目标时重新确定层次结构 当复制例程在它的两个化身中都从SSMS中执行时,它工作得绝对完美,并且复制是完全成功的。但是,当从ASP.Net网站中调

其中,环境要么是通过ASP.NET网站调用的存储过程,要么是直接从SQL management studio中调用的存储过程

我开发了一个复制例程,它将文件夹和文件的层次结构复制到指定的目标,例如从指定的源复制到指定的目标。我使用递归解决方案(即使用嵌套的存储过程调用)和另一种方法实现了这一点,该方法首先展平文件夹和文件的层次结构,然后通过查找在复制到其目标时重新确定层次结构

当复制例程在它的两个化身中都从SSMS中执行时,它工作得绝对完美,并且复制是完全成功的。但是,当从ASP.Net网站中调用时,复制只会发生在一定深度,然后停止。不会返回任何错误,也不会引发任何异常。日志记录表明,当存储过程失败时,复制在存储过程的两个化身的相同时间和相同深度停止

事务范围、缓冲区问题、断言允许的执行时间、LINQ到SQL限制或缓存的执行计划是否存在问题


任何帮助都将不胜感激

提供一个广泛的答案。隔离L2并通过ADO.NET api直接调用存储过程提供了一个有效的解决方案,在这样做的过程中,至少有一个变量会影响存储过程的成功执行。乔恩C在这里值得称赞

也许你只是达到了默认的超时时间?@brumcouse此过程通常需要多长时间?小时、分钟、秒?SSMS从不超时。默认情况下,.NET将在30秒内完成CommandTimeout PropertyId,您已尝试单步执行sproc@brumScouse您是否可以尝试绕过L2S并查看SqlCommand/SqlConnection类生成什么?只是为了排除故障。