什么在运行我的WCF服务?

时间:2013-11-16 06:11:24

标签: c# asp.net wcf iis service

当我尝试在IIS而不是ASP.NET Development Server上运行我的WCF服务时出现错误。

澄清:在使用Windows服务或ASP.NET开发服务器时运行WCF服务时,我没有收到错误。 只有IIS才是问题。

我正在使用控制台应用来测试该服务。在尝试使用IIS端口之前,我从未遇到过该服务的问题。

这是我的控制台应用程序的app.config文件。顶部地址和端口号是ASP.NET Dev Server端口。第二个是IIS端口。

以下是我的App.config文件。最顶层的一个IIS端口。活动的是ASP.NET Development Server端口。当我运行ASP.NET端口时,我没有错误。当我运行IIS端口时,出现错误。 (另外,我的任务栏上出现了大约4个ASP.NET端口。我不知道为什么。)

我的App.config文件如下所示:

<?xml version="1.0" encoding="utf-8" ?>
<configuration>
<system.serviceModel>
    <bindings>
        <wsHttpBinding>
            <binding name="WSHttpBinding_IWebService" />
        </wsHttpBinding>
    </bindings>
    <client>
<!-- <endpoint address="http://localhost:9876/Service.svc" binding="wsHttpBinding"-->
        <endpoint address="http://localhost:5182/Service.svc" binding="wsHttpBinding"       
            bindingConfiguration="WSHttpBinding_IWebService" 
contract="MyWCF_ServiceReference.IWebService"
            name="WSHttpBinding_IWebService">
            <identity>
                <dns value="localhost" />
            </identity>
        </endpoint>
    </client>
</system.serviceModel>
</configuration>

以下是一些图片。

这是我收到的错误消息。

Error Message

以下地址与以前的地址有什么不同? http:// localhost:8732 / Design_Time_Addresses / WCFServiceLibrary / WebService / mex

Different Address

这是因为一些未知原因导致崩溃的地方。值得注意的是,部分服务有效。只有当它到达ValidPerson时才崩溃。

(使用ASP.NET Development Server端口5182时也不会发生这种情况。仅在使用IIS端口9876时)

enter image description here

这表明在WCF服务本身,ValidPerson实际上正在工作。

enter image description here

这是运行它的conf文件。

enter image description here

我希望你们能帮助我。一定很简单。

1 个答案:

答案 0 :(得分:0)

好的,我没有问正确的问题,虽然我正在学习,但是我去了。

我需要确保配置文件中的地址与ASP.NET开发服务器的地址(很可能是默认地址)匹配,或者将其更改为IIS地址,这需要我检查WSDL的托管位置adn使用该地址而不是默认地址。或者使用分配给我的Windows服务的addrress,我可以通过打开项目文件并查看分配给它的号码和地址来找到它。

真正的问题是我的SQL Server中的应用程序池帐户需要设置为db_owner的角色。然后我的所有问题都消失了(一旦我在正确的地址上找到了正确的地址。)