如何停止Visual Studio调试,使sql数据库更改不提交
本文关键字:数据库 提交 sql Visual 何停止 Studio 调试 | 更新日期: 2023-09-27 17:55:05
我白天处理几个代码页和存储过程。我寻找一个简单的方法来停止visual studio,而调试,所以数据库更改回滚。由于我使用几个页面,所以我不想在我的页面或我使用的每个SP中添加此代码。有一个快捷方式或命令,我可以在即时窗口使用?(我对其他解决方案持开放态度-这些都是我想到的)如果我可以手动抛出异常(不是用代码写的,在即时窗口可能是,它可能工作)
我认为最好的方法是使用TransactionScope类。
在
中封装你的db调用 using (TransactionScope scope = new TransactionScope())
{
// Invoke your database calls
scope.Complete(); // Put a break point here and stop the program when the break point is hit.
}
我通常使用进程资源管理器杀死w3wp.exe
进程。或者,您可以将调试器中的"黄色标记"拖放到提交之后的某个点,以便跳过提交。我有时也会将变量设置为null
,并以这种方式引发崩溃。
如果你想抛出一个异常,你可以使用即时窗口,在到达断点后。
问题是,你不能在即时窗口中使用如下内容:
throw new ApplicationException("Forced exception");
但是你可以创建这个方法,然后从即时窗口
启动它public static void ForceAnException()
{
throw new ApplicationException("Forced exception");
}
当前窗口:
ForceAnException();
编辑:
那么试试这个:
var throwEx = false;
if(throwEx) ForceAnException();
并在检查条件之前将立即窗口的throwEx更改为true…