2010-05-21 30 views
0

我已經完成的事件沒有爲WCF長時間運行的調用(最多1.5分鐘返回)觸發此問題,它在IE 8中工作正常,但不起作用Firefox,Chrome或Safari。 尋找小提琴結果顯然會得到回報,正如我所說,它在IE中可以正常工作,所以事情的一方顯然是有效的。Silverlight完成WCF調用不在Firefox中觸發的事件

使用一個示例項目,我設法很好地縮小了它,這似乎是由於我使用Client HTTP Stack而不是瀏覽器堆棧進行網絡連接。

有沒有人有過很多客戶端http stack的經驗,或者遇到過這種類型的行爲?

類似的事情發生在IE瀏覽器開始,但增加了客戶端WCF服務的超時,解決了這個問題。

任何想法或建議,將不勝感激,因爲我已經做了網絡上搜索的一大堆,沒有任何運氣:(

乾杯, 奧拉

回答

1

我結束了此報告,並here它在Silverlight視爲一個bug 4

有沒有過任何決議但是他們發現了一個解決方法,這裏是來自回覆到bug報告的MS人員的引用:

「雖然在這裏嘗試了,但我發現事件處理程序被調用,但e .Error屬性有一個值。這意味着你不能訪問e.Result(因爲事件中有錯誤)。如果您按照以下所示更改實施,您會看到這一點。但是,我們仍在調查爲什麼Firefox中的客戶端堆棧的行爲與Firefox中的其他瀏覽器(IE)或瀏覽器堆棧的行爲不同。

void client_DoLongTimeCompleted(object sender, DoLongTimeCompletedEventArgs e) 
{ 
DateTime timeStamp = DateTime.Now; 
if (e.Result == null) 
{ 
    txtOutPut.Text += string.Format("\n{0} {1}", e.Result, timeStamp); 
} 
else 
{ 
    txtOutPut.Text += string.Format("\n[{0}] Error: {1}", timeStamp, e.Error); 
} 
}"