我有一個問題,讓jQuery從WCF服務檢索結果。我在IIS中託管WCF服務,當我將調試器附加到此過程中時,我可以看到代碼已成功處理。但是,當它在jQuery中觸發回調沒有數據?WCF服務沒有返回值到jQuery
我已經在wcf服務上設置了跟蹤並且沒有錯誤。它看起來好像在wcf服務方法完成後數據丟失了。
這裏是調用服務的jQuery代碼:
$.get("http://ecopssvc:6970/ecopsService.svc/Echo", {echoThis: "please work"}, function(data) {
alert("Data Loaded: " + data);
});
這裏是WCF配置:
<system.serviceModel>
<services>
<service name="EcopsWebServices.EcopsService" behaviorConfiguration="EcopsServiceBehaviours">
<endpoint address="" behaviorConfiguration="WebBehaviour"
binding="webHttpBinding" bindingConfiguration="" contract="EcopsWebServices.IEcopsServiceContract" />
</service>
</services>
<behaviors>
<endpointBehaviors>
<behavior name="WebBehaviour">
<webHttp />
<enableWebScript />
</behavior>
</endpointBehaviors>
<serviceBehaviors>
<behavior name="EcopsServiceBehaviours">
<serviceMetadata httpGetEnabled="true" httpGetUrl=""/>
<serviceDebug includeExceptionDetailInFaults="true"/>
</behavior>
</serviceBehaviors>
</behaviors>
</system.serviceModel>
這裏是服務合同:
[ServiceContract]
public interface IEcopsServiceContract
{
[WebGet]
[OperationContract]
string Echo(string echoThis);
}
這裏是服務實施:
[AspNetCompatibilityRequirements(RequirementsMode = AspNetCompatibilityRequirementsMode.Allowed)]
public class EcopsService : IEcopsServiceContract
{
#region IEcopsServiceContract Members
public string Echo(string echoThis)
{
return string.Format("You sent this '{0}'.", echoThis);
}
#endregion
}
請幫助別人!!!
您是否在頁面上使用ASP.Net並通過''元素引用服務? –
2010-03-10 12:27:28
您是否監控網絡流量? (也許使用Fiddler或FireBug)..只需要找出失敗點。 – Noel 2010-03-10 12:29:51
感謝您的迴應傢伙。我沒有使用元素。我不相信這是必要的。我發現這個網頁http://dotnetdiscoveries.blogspot.com/2008/05/using-jquery-with-json-enabled-wcf。在我搜索谷歌期間,他已經實施它和我一樣,除了他的版本的作品?! 諾埃爾,我用Firebug和我收到一個空迴應...... –
smithy
2010-03-10 12:50:34