![](/img/trans.png)
[英]My WCF service is throwing Error when running through a windows service
[英]What is running my WCF Service?
當我嘗試在IIS而不是ASP.NET開發服務器上運行WCF服務時遇到錯誤。
澄清:使用Windows服務或ASP.NET開發服務器時,運行WCF服務時不會出現錯誤。 只有IIS是問題所在。
我正在使用控制台應用程序來測試服務。 在嘗試使用IIS端口之前,我從未遇到過服務問題。
這是控制台應用程序的我的app.config文件。 最上面的地址和端口號是ASP.NET Dev Server端口。 第二個是IIS端口。
以下是我的App.config文件。 頂級的IIS端口。 活躍的端口是ASP.NET開發服務器端口。 當我運行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>
這是一些圖片。
這是我收到的錯誤消息。
為什么下面的地址與以前的地址不同? http:// localhost:8732 / Design_Time_Addresses / WCFServiceLibrary / WebService / mex
由於某些未知原因,它在此處崩潰。 值得注意的是該服務的一部分起作用。 只有到達ValidPerson時它才會崩潰。
(使用ASP.NET開發服務器端口5182時也不會發生。僅當使用IIS端口9876時才發生)
這表明在WCF服務本身,ValidPerson實際上正在工作。
這是運行它的conf文件。
我希望你們能幫助我。 它一定很簡單。
好的,盡管我正在學習,但我並沒有提出正確的問題。
我需要確保配置文件中的地址與ASP.NET開發服務器的地址(很可能是默認地址)匹配,或者將其更改為IIS地址,這將需要我檢查WSDL的托管位置並使用該地址。地址,而不是默認地址。 或者使用分配給我的Windows服務的地址,我可以通過打開項目文件並查看分配給它的編號和地址來找到它。
真正的問題是我的SQL Server中的應用程序池帳戶需要設置為db_owner角色。 然后我所有的問題都消失了(一旦我用正確的地址將其放在正確的端口上。)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.