我在我的網站中啓用了支持Ajax的Web服務。支持WCF-Ajax的Web服務。服務未部署時定義
該服務位於網站根目錄下的WebServices文件夾中,該文件夾還包含自己的Web.config(因爲Ajax web.config的綁定與我網站另一層的配置衝突)。
我已經在我的母版頁添加了Web服務使用ScriptManager和使用jQuery來調用一個頁面中的服務。
這是所有工作的罰款本地運行在IIS 7中(Vista的)。
但是,當我發佈網站(本地文件系統,因爲我們必須手動將文件複製到我們的測試環境),然後將這些文件複製到我們的測試環境(在Windows Server 2008 R2上運行II 7.5),Web服務不起作用,我得到一個Javascript錯誤,說「服務沒有定義」。
如果我瀏覽到服務,然後我可以查看wsdl,但是如果我嘗試查看service.svc/js(頁面所尋找的相同url),則不會有問題,那麼我會收到一個404未找到的錯誤。
我已經做了谷歌搜索關於這個問題的很多,同時也有建議的Web.config修復的負荷,我已經嘗試了多種組合,到目前爲止,似乎沒有任何合作。
它是自己的服務是非常基本的。
[ServiceContract(Namespace = "MyService")]
[AspNetCompatibilityRequirements(RequirementsMode = AspNetCompatibilityRequirementsMode.Required)]
public class MyService
{
[OperationContract]
public JSONObject DoWork()
{
...Do some logic
return JSONObject;
}
}
的JSONObject是我創建的只是擁有一些屬性被髮送到該頁面的類。正如我所說,這是所有工作在IIS本地託管。
---編輯
下面是在同一目錄坐作爲Web服務Web.Config中:
<?xml version="1.0"?>
<configuration>
<system.serviceModel>
<bindings>
<webHttpBinding>
<binding name="default" />
</webHttpBinding>
</bindings>
<services>
<service name="MyWebsite.WebServices.MyService"
behaviorConfiguration="MyWebsite.WebServices.MyServiceBehavior" >
<endpoint address="" behaviorConfiguration="MyWebsite.WebServices.MyServiceAspNetAjaxBehavior" binding="webHttpBinding" contract="MyWebsite.WebServices.MyService" />
</service>
</services>
<behaviors>
<serviceBehaviors>
<behavior name="MyWebsite.WebServices.MyServiceBehavior">
<serviceMetadata httpGetEnabled="true"/>
</behavior>
</serviceBehaviors>
<endpointBehaviors>
<behavior name="MyWebsite.WebServices.MyServiceAspNetAjaxBehavior">
<enableWebScript />
</behavior>
</endpointBehaviors>
</behaviors>
</system.serviceModel>
</configuration>
我也有我的根web.config中的以下部分:
<system.serviceModel>
<serviceHostingEnvironment aspNetCompatibilityEnabled="true" />
</system.serviceModel>
你可以在web.config中發佈你的配置嗎? – Rajesh 2011-12-21 11:18:10
你看到部署之間有什麼不同?服務器上的服務有效的虛擬目錄或應用程序的文件夾?您是否使用相同版本的.NET框架等等。 – 2011-12-21 23:40:37
Webservice文件夾只是網站應用程序根目錄中的一個文件夾。 .NET的版本是相同的,唯一的主要區別是一個是Vista上的IIS 7,另一個是Server 2008 R2上的IIS 7.5。 – Morgeh 2011-12-22 09:17:34