C# 如何使用Moq单元测试必须在同一TransactionScope内调用一组方法

C# 如何使用Moq单元测试必须在同一TransactionScope内调用一组方法,c#,unit-testing,moq,C#,Unit Testing,Moq,我在.Net应用程序中使用MOQ进行单元测试。我需要编写单元测试,以确保必须在事务范围内调用一组方法。我的代码如下所示: using (var scope = _transactionManager.CreateScope(TransactionScopeOption.Required)) { Repository.MethodA(); Repository.MethodB(); Re

我在.Net应用程序中使用MOQ进行单元测试。我需要编写单元测试,以确保必须在事务范围内调用一组方法。我的代码如下所示:

using (var scope = _transactionManager.CreateScope(TransactionScopeOption.Required))
        {
                Repository.MethodA();
                Repository.MethodB();
                Repository.MethodC();
                _transactionManager.CompleteScope(scope);
        }
我需要确保存储库的MethodA()、MethodB()和MethodC()必须在同一TransactionScope内调用

在我的单元测试中仅仅调用Verify来验证这些方法是不够的,因为这不能确保在同一transactionscope中调用方法

任何帮助都将不胜感激


谢谢

理论上,您也可以模拟交易,可能我无法理解您的限制。但是,您可以在执行方法中使用Transaction.Current.TransactionInformation进行确认。希望有帮助。

请查看此答案,看看它是否对您有帮助: