在 wcf 客户端 app.config 错误(自主机)中找不到端点元素
Posted
技术标签:
【中文标题】在 wcf 客户端 app.config 错误(自主机)中找不到端点元素【英文标题】:could not find endpoint element in wcf client app.config error(self-host) 【发布时间】:2012-06-04 15:26:46 【问题描述】:<configuration>
<system.serviceModel>
<bindings>
<basicHttpBinding>
<binding name="ep1" 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="None">
<transport clientCredentialType="None" proxyCredentialType="None"
realm="" />
<message clientCredentialType="UserName" algorithmSuite="Default" />
</security>
</binding>
</basicHttpBinding>
</bindings>
<client>
<endpoint address="http://localhost:57582/Service1.svc" binding="basicHttpBinding"
bindingConfiguration="ep1" contract="ServiceReference1.IService1"
name="ep1" />
</client>
</system.serviceModel>
</configuration>
这是我在自动生成的 app.config 文件中对客户端端点的配置,但我仍然收到以下错误: 在 ServiceModel 客户端配置部分中找不到名称为“ep1”和合同“ServiceReference1.IService1”的端点元素。这可能是因为找不到您的应用程序的配置文件,或者因为在客户端元素中找不到与此名称匹配的端点元素。
我正在使用 ::
Service1Client wcf = new Service1Client("ep1")
它现在可以工作了。我刚刚在 web.config 中定义了来自自动生成的 app.config 文件的整个解决方案的客户端端点。它现在可以工作了。
【问题讨论】:
可能是个愚蠢的问题 - 但 bin 文件夹中是否存在[yourappname].exe.config
文件?
【参考方案1】:
如果这是一个 Windows 应用程序项目,您需要添加一个“应用程序配置文件”(保留名称为 app.config),如果您的项目根目录中已经有一个,没问题。
如果它是一个 web 项目 - 那么你需要将它作为 web.config 的目标。
接下来,将上面的配置复制到那里,然后重新构建并运行。然后它应该可以工作了。
【讨论】:
不,这是一个 Web 应用程序项目。目前我正在尝试在本地使用它 好的 - Web 项目是客户端吗?还是服务器?还是两者兼而有之? 暂时两者兼而有之。但稍后我将使用 IIS 托管它。【参考方案2】:几乎可以肯定的是,您正在运行的代码正在从没有定义此端点的配置文件中读取。您确定您正在从构建输出位置查看配置文件吗?
我猜你需要在配置文件中设置 copy local = true。
【讨论】:
这个端点已定义。我已经粘贴了上面的配置代码。 你能把配置文件的文件路径也贴出来吗? 它在我添加服务引用的类文件下。 你能看到bin文件夹中的文件吗? 没有创建 bin 文件夹。它与添加服务引用时自动生成的 app.config 文件相同。以上是关于在 wcf 客户端 app.config 错误(自主机)中找不到端点元素的主要内容,如果未能解决你的问题,请参考以下文章
.NET - 部署 WCF 客户端,没有 app.config
WCF 何时使用 app.config 或 web.config?
在 App.config 中设置 WCF ClientCredentials