asp.net-mvc - C#中检查DTC服务是否开启

标签 asp.net-mvc msdtc

当分布式事务协调器 (DTC) 未运行时,我们的 MVC C# 站点会抛出奇怪的误导性错误,让开发人员和测试人员感到困惑。我们想要进行代码检查以确保服务正在运行,并在 Global.asax 等内容上标记问题。有办法做到这一点吗?

最佳答案

以下代码将在本地计算机上启动 MSDTC 服务(如果当前“已停止”)

您需要引用System.ServiceProcess程序集


using(var msDtcSvc = new System.ServiceProcess.ServiceController("MSDTC"))
{
    if(msDtcSvc.Status == System.ServiceProcess.ServiceControllerStatus.Stopped)
    {
        msDtcSvc.Start();
    }
}

关于asp.net-mvc - C#中检查DTC服务是否开启,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28215093/

相关文章:

asp.net-mvc - 401 未经授权 : WWW-Authenticate: Bearer

.net - 抑制只读 EF 上下文的 TransactionScope 登记?

.net - MSDTC促进交易分布式的可靠测试吗?

asp.net-mvc - 良好的 WiX 编辑器

c# - 如何解决用于测试目的的基本 Controller 依赖注入(inject)?

javascript - 如何在 StringBuilder 中替换 html 的脚本内容

javascript - 设置输入类型=日期

c# - 锁定导致数据库操作太慢

.net - 用于 Windows Server 事务/错误处理的服务总线 1.0