【发布时间】:2014-10-11 20:19:22
【问题描述】:
我有一个 app.config 文件。它来自给我的一个示例,用于我必须使用的 API...我想从文件中获取一个设置,以便我可以使用那里的设置而不必重复工作。
如何在此 app.config 文件中获取“FindMe”、“LocalMachine”和“My”字样(以驱动从给定信息中提取证书)?
<?xml version="1.0" encoding="utf-8"?>
<configuration>
<startup>...</startup>
<system.serviceModel>
<bindings>...</bindings>
<client>...</client>
<behaviors>
<endpointBehaviors>
<behavior name="ClientCertificateBehavior">
<clientCredentials>
<clientCertificate findValue="FindMe" storeLocation="LocalMachine" storeName="My" x509FindType="FindBySubjectName"/>
<serviceCertificate><authentication certificateValidationMode="None"/></serviceCertificate>
</clientCredentials>
</behavior>
</endpointBehaviors>
</behaviors>
</system.serviceModel>
</configuration>
我正在寻找是否可以在 System.ServiceModel.Configuration 或 ConfigurationManager 中找到它,但我没有看到如何获取这些特定值。
编辑:
我认为我真的很接近,但我似乎无法获得价值观。
【问题讨论】:
-
-
@dashsa 我可以这样做,如果我只是想将设置放在一个文件中......仍然会添加两个具有相同设置的位置。目标是能够从一个位置提取我想要的信息,这样我就不必维护两个位置(即使在同一个文件中)。重复设置 = 忘记更新第二个设置。
-
@Gandarez 在玩,我有一个行为元素
var config = ...; var group = ...; var behaviors = group.Behaviors.EndpointBehaviors;,这似乎是一个很好的起点。仍然试图找到clientCredentials的属性,但我觉得答案让我更接近了。 -
这让我很接近,我仍在寻找......但这个答案并没有让我完全到达那里。我有 SectionGroups,但我似乎无法确定各个属性/属性。我感觉它就在我的鼻子底下。
标签: c# wcf app-config wcf-binding service-model