私はScriptManagerコントロールによって使用していますWCFサービスがあります。のScriptManager WCFサービスIEの問題
<asp:ScriptManager ID="ScriptManager1" runat="server">
<Services>
<asp:ServiceReference Path="/service/client.svc" />
</Services>
</asp:ScriptManager>
このサービス内のメソッドを呼び出すには、私はいくつかのJavaScript/jQueryのを使用しています:
$().ready(function() {
RefreshClient();
});
function PlaceBid() {
var client = new theClient();
client.DoSomething(1, 1000, 2000, 50, 5000, 1000, UpdateResult, null, null);
}
function UpdateResult(data){
// logic and more jQuery to update controls on page
// e.g. $('#status').html('<div class="something">' + data.msg + '</div>');
}
私のClient.svcサービスでは、データベースへの呼び出しをいくつか行い、データベース値に基づいて結果を返します。
Chromeでは、FF、Operaのすべてが正常に動作します。しかし、何か奇妙な理由でスクリプトが動作しなくなっているIE8/7では何かが間違っています。
私はプロジェクトをデバッグし、IEのステップがうまくいき、変更を加えてデータベースを更新すると、これらの変更が引き継がれ、ページのコントロール(たとえば単純なもの)がそれに応じて更新されます。私がデバッグを止めるとすぐに、IEページが機能しなくなります。
IEがclient.DoSomething関数をキャッシュしているように、新しい値ではなく常に元の値が返されます。
アイデア?
hmmはキャッシュ結果と同じように見えますが、IEのみです。 WebOperationContext.Current.OutgoingResponse.Headers.Add( "Cache-Control"、 "no-cache")という行を追加して、メソッドをキャッシュして結果をキャッシングしなくても、今はうまく動作しているようですが、 Ajaxクライアント側フレームワークが「エラーをロードできませんでした! –