我想在执行SqlException
时嘲笑ExecuteNonQuery
的投掷;
System.Data.SqlClient.Moles.MSqlCommand.AllInstances.ExecuteNonQuery =
(command) =>
{
throw new MSqlException();
};
这不起作用,因为编译器抱怨MSqlException
不是从Exception
派生的。我是以错误的方式解决这个问题,我是否需要在代码中包含ExecuteNonQuery
来实现此目的?
答案 0 :(得分:0)
如果你要抛出一个SqlException
,我希望这会起作用。它继承自DbException
,继承自ExternalException
,继承自ExternalException
。
如果您编写自定义异常(我假设MSqlException
是一个),您仍应继承异常类...
public class MSqlException: SqlException {
答案 1 :(得分:0)
在另一个问题中找到答案。痣需要铸造。
stackoverflow.com/a/3795751/771698