gpt4 book ai didi

.net - 将此 app.config xml 转换为代码? (WCF)

转载 作者:行者123 更新时间:2023-12-04 07:08:33 25 4
gpt4 key购买 nike

我需要将以下 app.config 部分转换为代码。我已经看到了几个例子,但仍然无法让它发挥作用。有人可以帮忙吗?

<system.serviceModel>
<bindings>
<basicHttpBinding>
<binding name="MyService"
closeTimeout="00:01:00"
openTimeout="00:01:00"
receiveTimeout="00:10:00"
sendTimeout="00:01:00"
allowCookies="false"
bypassProxyOnLocal="false"
hostNameComparisonMode="StrongWildcard"
maxBufferSize="65536"
maxBufferPoolSize="524288"
maxReceivedMessageSize="65536"
messageEncoding="Text"
textEncoding="utf-8"
transferMode="Buffered"
useDefaultWebProxy="true">
<readerQuotas maxDepth="32"
maxStringContentLength="8192"
maxArrayLength="16384"
maxBytesPerRead="4096"
maxNameTableCharCount="16384" />
<security mode="TransportWithMessageCredential">
<transport clientCredentialType="None"
proxyCredentialType="None"
realm="" />
<message clientCredentialType="UserName"
algorithmSuite="Default" />
</security>
</binding>
</basicHttpBinding>
</bindings>
<client>
<endpoint address="https://server.com/service/MyService.asmx"
binding="basicHttpBinding" bindingConfiguration="MyService"
contract="MyService.MyServiceInterface"
name="MyService" />
</client>
</system.serviceModel>

我的用例是我正在编写一个将由其他非.net 应用程序使用的 dll,因此我没有放置 app.config 的好地方。

谢谢!

最佳答案

你可以使用这样的东西(它看起来很标准 basicHttpBinding):

BasicHttpBinding binding = new BasicHttpBinding();
Uri endpointAddress = new Uri("https://server.com/service/MyService.asmx");

ChannelFactory<MyService.MyServiceInterface> factory = new ChannelFactory<MyService.MyServiceInterface>(binding, endpointAddress);

MyService.MyServiceInterface proxy = factory.CreateChannel();

只要您有一个包含可用契约(Contract)(“MyService.MyServiceInterface”)的 DLL 并且您可以在您的客户端中引用它,这就会起作用。

如果你在服务端需要这个,你将不得不使用一些不同的类等等——但基本是一样的(创建一个绑定(bind),创建一个或多个端点地址,绑定(bind)它们)。

马克

PS:抱歉,我刚刚注意到您使用了 https://地址 - 这可能需要在代码中进行一些额外的安全配置。

关于.net - 将此 app.config xml 转换为代码? (WCF),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/730693/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com