jQuery没有被Cached WCF称为错误

时间:2013-08-23 15:45:04

标签: jquery wcf caching

我通过jQuery Ajax调用启动了WCF服务。我得到的错误是

“jQuery182021375292306765914_1377272303506未被调用”

它完全正常,直到我尝试将缓存添加到WCF,这是我的.Net代码

    [OperationContract]
    [Description("Gets Session List")]
    [WebGet(BodyStyle = WebMessageBodyStyle.Bare,
    RequestFormat = WebMessageFormat.Json,
    ResponseFormat = WebMessageFormat.Json,
    UriTemplate = "GetSessionList")]
    [AspNetCacheProfile("CacheFor60Seconds")]
    List<Session> GetSessionList();

和我的web.config

 <caching>
  <outputCacheSettings>
    <outputCacheProfiles>
      <add name="CacheFor60Seconds" duration="3600" varyByParam="none"/>
    </outputCacheProfiles>
  </outputCacheSettings>
</caching>

我也有aspNetCompatibilityEnabled =“true”

这是我的JS代码

   var location = JSON.stringify(j$("#Filter option:selected").val());
        j$.ajax({
            cache: true,
            url: "http://localhost:57200/Service.svc/GetSessionList",
            data: "{}",
            type: "GET",               
            jsonpcallback: "SessionList",
            contentType: "application/javascript",
            dataType: "jsonp",
            error: function(xhr, status, error) {
                alert(error.Message);
            },
            success: function (data) {
                builtHtml(data);
            },
            complete: function () {
                j$("#button").disabled = false;
                j$('#searchbox').removeClass('loading');
                j$("#resultsBlock").show();
            }

        });

如果我将WCF缓存设置为1(即使我从不真正缓存,除非我很快),它工作正常,但如果我将其提升到触发缓存的响应时,错误块将在jQuery中触发。在打开缓存的情况下从浏览器调用WCF工作正常,因此它不是问题,它与AJAX响应。

非常感谢任何帮助。

0 个答案:

没有答案