我有一个甜蜜的WinForm应用程序(在我的计算机上)和一个SQL Server数据库(在服务器X上)。我正在使用SqlConnection
,一切正常。
但我不想更改它并使用WCF或其他技术在我的应用和数据库之间连接和切换信息。
我还有一台服务器用作应用服务器(服务器Y)。
我已经开始使用WCF:创建项目,创建安装程序。
在Y服务器上载并安装它。服务已启动,我也已将服务参考添加到我的WinForm应用程序,但ServiceClient
无法正常运行。
当我调用ServiceClient
的方法时,它会抛出异常:
mscorlib.dll中出现'System.ServiceModel.EndpointNotFoundException'类型的异常,但未在用户代码中处理
其他信息:http://localhost:41272/service没有可以接受该消息的端点。这通常是由错误的地址或SOAP操作引起的。有关更多详细信息,请参阅InnerException(如果存在)。
我猜我的终点正在搞砸。
所以我希望你们帮助我如何配置SQL端点。
这是我的WCF的web.config
:
<?xml version="1.0"?>
<configuration>
<system.web>
<compilation debug="true" targetFramework="4.5" />
<httpRuntime />
<pages controlRenderingCompatibilityVersion="4.0" />
</system.web>
<system.serviceModel>
<behaviors>
<serviceBehaviors>
<behavior name="SampleSvcBehavior">
<serviceDebug includeExceptionDetailInFaults="true" />
<serviceMetadata httpGetEnabled="true" />
</behavior>
</serviceBehaviors>
</behaviors>
<services>
<service behaviorConfiguration="SampleSvcBehavior"
name="FMG_WCF.FmgService">
<endpoint name="SampleSvcBasicHttpEndPoint"
address=""
binding="basicHttpBinding" bindingConfiguration=""
contract="FMG_WCF.IFmgService" />
<endpoint name="SampleSvcMexHttpEndPoint"
address="mex"
binding="mexHttpBinding" bindingConfiguration=""
contract="IMetadataExchange" />
<host>
<baseAddresses>
<add baseAddress="http://localhost:41272/service" />
</baseAddresses>
</host>
</service>
</services>
</system.serviceModel>
</configuration>
答案 0 :(得分:0)
此错误与SQL端点无关。事实上,您不需要端点来将WCF连接到数据库。以下是您在另一篇文章中的答案。
EndpointNotFoundException - 404 - Hosting WCF Service over HTTPS in IIS through Visual Studio
答案 1 :(得分:0)
您有两个选择,如果在创建服务时修改了服务,您只需右键单击服务引用并配置服务引用即可。在弹出窗口中,您可以将Url更改为指向serverX,您的服务引用和配置文件将自动更新。
如果没有对服务进行任何更改,例如您的绑定类型或安全性,那么只需更新配置文件中的Url即可。