无法通过 c# 在 machine.config 中添加 behaviorExtension



我的 BizTalk 应用程序要求我向我的 machine.config 文件添加自定义行为扩展。我通过 MSI 和 BizTalk 部署框架 (BTDF) 安装我的应用程序,所以我希望这也以编程方式完成。

现在我似乎找不到一种方法来列出已安装的行为而不是编辑它们。

有以下代码,但之后我卡住了。

        // Get the machine.config file.
        Configuration machineConfig = ConfigurationManager.OpenMachineConfiguration();
        // Get the machine.config file path.
        ConfigurationFileMap configFile = new ConfigurationFileMap(machineConfig.FilePath);
        // Map the application configuration file to the machine 
        // configuration file.
        Configuration config = ConfigurationManager.OpenMappedMachineConfiguration(configFile);
        ConfigurationSectionGroup svcModel = config.SectionGroups.Get("system.serviceModel");
        ConfigurationSection extensions = svcModel.Sections.Get("extensions");

谁能给我一些关于如何处理这个问题的指示?

你快到了。您的extensions变量的类型是 System.ServiceModel.Configuration.ExtensionsSection ,它具有包含您要查找的内容的属性行为扩展。所以:

var extensions = (System.ServiceModel.Configuration.ExtensionsSection) svcModel.Sections.Get("extensions");
var behaviors = extensions.BehaviorExtensions;

最新更新