我有asp.net web application
并在我的app.config
文件中包含以下内容。
<system.serviceModel>
<bindings>
<basicHttpBinding>
<binding name="Test" />
<binding name="Test1">
<security mode="Test" />
</binding>
<binding name="BasicHttpBinding_IService1" />
</basicHttpBinding>
</bindings>
<client>
<endpoint address="http://test:90001"
binding="basicHttpBinding" bindingConfiguration="Test"
contract="Test" name="HTTP_Port" />
</client>
</system.serviceModel>
我如何get/read endpoint address
有价值?
我已经遇到了这个solution,但它对我要求exe文件路径不起作用。不确定哪个exe路径文件?
答案 0 :(得分:0)
var serviceModel = ServiceModelSectionGroup.GetSectionGroup(ConfigurationManager.OpenExeConfiguration(ConfigurationUserLevel.None));
var endpoints = serviceModel.Client.Endpoints;
foreach (ChannelEndpointElement e in endpoints)
{
if (e.Name == "HTTP_Port")
Console.WriteLine(e.Address);
}
Console.ReadLine();
要从appconfig读取端点,您需要添加System.ServiceModel.Configuration的引用并使用返回serviceModel组的GetSectionGroup方法,如果您只需要可以访问的那个端点,则可以访问该部分中的所有端点。端点名称。
同样在appconfig中你提供的端口无效,我在读取带有该端口的url时出错并假设你刚刚添加了该示例。