gpt4 book ai didi

wcf - 如何在配置文件中创建没有设置的 WCF 客户端?

转载 作者:行者123 更新时间:2023-12-03 21:17:14 26 4
gpt4 key购买 nike

我一个月前才开始研究 WCF。如果我问一些已经回答的问题,请原谅我。我尝试先搜索但一无所获。

我阅读了这篇文章,WCF 文件传输:IIS 中托管的流式传输和分 block channel 。它工作得很好。现在我喜欢将客户端代码集成到我的应用程序中,这是一个在 AutoCAD 中运行的 dll。如果我想使用配置文件,我必须更改 acad.exe.config,我认为这不是一个好主意。所以我认为如果可能的话,我想将配置文件中的所有代码移动到代码中。

这是配置文件:

<?xml version="1.0" encoding="utf-8" ?>
<configuration>
<system.serviceModel>
<bindings>
<basicHttpBinding>
<binding name="BasicHttpBinding_IService" 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="Mtom" textEncoding="utf-8" transferMode="Buffered"
useDefaultWebProxy="true">
<readerQuotas maxDepth="32" maxStringContentLength="8192" maxArrayLength="16384"
maxBytesPerRead="4096" maxNameTableCharCount="16384" />
<security mode="None">
<transport clientCredentialType="None" proxyCredentialType="None"
realm="" />
<message clientCredentialType="UserName" algorithmSuite="Default" />
</security>
</binding>
</basicHttpBinding>
</bindings>
<client>
<endpoint address="http://10.1.13.15:88/WCFStreamUpload/service.svc/ep1"
binding="basicHttpBinding"
bindingConfiguration="BasicHttpBinding_IService"
contract="MGFileServerClient.IService"
name="BasicHttpBinding_IService" />
</client>
</system.serviceModel>

你能帮我做这个改变吗?

最佳答案

您可以在代码中进行所有设置,假设您将来不需要灵活地更改它。

您可以在 MSDN 上阅读有关设置端点的信息。 .虽然这适用于服务器,但端点和绑定(bind)的配置也适用于客户端,只是您使用不同的类。

基本上你想做这样的事情:

// Specify a base address for the service
EndpointAddress endpointAdress = new EndpointAddress("http://10.1.13.15:88/WCFStreamUpload/service.svc/ep1");
// Create the binding to be used by the service - you will probably want to configure this a bit more
BasicHttpBinding binding1 = new BasicHttpBinding();
///create the client proxy using the specific endpoint and binding you have created
YourServiceClient proxy = new YourServiceClient(binding1, endpointAddress);

显然,您可能希望使用与上面的配置( you can read about the BasicHttpBinding on MSDN)相同的安全性、超时等来配置绑定(bind),但这应该会让您朝着正确的方向前进。

关于wcf - 如何在配置文件中创建没有设置的 WCF 客户端?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6335640/

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