我在下面的表格基本WCF客户服务。 第一次被调用时,它返回从远程服务器正确的数据。 然而,数据经常变化。 在随后的调用,它返回它没有在第一次调用相同的数据。 因此,Excel似乎返回缓存数据。
如果我运行从小提琴手或浏览器相同的WCF程序,它似乎总是返回电流/刷新的数据(所以我认为这个问题是在Excel中,而不是服务器)。 我怎么能强制Excel VBA“刷新”的称呼,而不是从缓存中获取数据? 注意:这将分发到各种最终用户的,所以我不能让客户端配置的变化。
Public Function CallWCF() As String
Dim HttpReq As Object
Set HttpReq = CreateObject("MSXML2.XMLHTTP")
HttpReq.Open "GET", "http://ws.mydomain.com/Rest.svc/getmydata"
Call HttpReq.Send
Do While HttpReq.readyState <> 4
DoEvents
Loop
Dim resp As String
resp = HttpReq.ResponseText
CallWCF = resp
Set HttpReq = Nothing
End Function