2009-11-19 55 views
1

這讓我在過去的幾個小時裏瘋了。需要幫助,大時間。我在本地機器上開發了一個解決方案,並將其發佈到一個網站上,該網站是一個基本的文件上傳web服務和一個將文件發佈給它的silverlight應用程序。我有一個我嘗試加載的文件夾列表,當我調用GetFolders()方法異步返回除了並且導致通信錯誤:「NotFound」。Silverlight和webservice,無法調用方法,得到「未找到」結果

的Web服務可以用:(文件引用不再可用)

Silverlight應用程序包含兩個項目:(文件引用不再可用)(無安全性)和我的web服務代碼可以從以下地址下載,其中一個帶有silverlight對象和一個主機頁面,它們都包含在此下載內容中:(文件參考不再可用)

基本上,silverlight用「GetFolders()」方法填充文件夾的下拉列表,並在終結命令的事件處理程序崩潰了......我花了最後5個小時來回嘗試,並且重新寫下了整個該死的東西 - 希望這會有所幫助我...任何幫助表示讚賞

服務在本地工作,沒有問題...這使得它更:-)糟糕

更新:啓用了簡單的測試按鈕,並嘗試運行「GetFolders()」方法,它返回一個錯誤http錯誤500,它與「NotFound」錯誤一樣。

更新2:在同一個域上運行的網站沒有任何問題。從不同的域訪問Web服務現在已經造成了很大的問題。當我從同一個域運行Silverlight應用程序和Web服務時,它工作正常。當它們位於不同的域上時(例如localhost上的silverlight應用程序),則會發生錯誤。我沒有自己的Web服務的網站,所以我不能實現更多的日誌記錄,我不認爲這是問題。林倚更趨向跨域問題,但我不知道如何解決這個問題(我有在同一水平上一個clientaccesspolicy.xml文件作爲我的.asmx文件看起來像這樣:

<?xml version="1.0" encoding="utf-8" ?> 
<access-policy> 
    <cross-domain-access> 
    <policy> 
     <allow-from http-request-headers="*"> 
     <domain uri="*"/> 
     </allow-from> 
     <grant-to> 
     <resource path="/" include-subpaths="true"/> 
     </grant-to> 
    </policy> 
    </cross-domain-access> 
</access-policy> 

/布賴恩

+0

你是否消除了基本的東西,比如文件系統權限?也許你需要在web服務本身中實現一些日誌記錄來嘗試捕獲異常。 – slugster 2009-11-20 02:51:58

+0

我消除了像文件io這樣的基本東西。我有一個基本的方式使用這個網絡解決方案,它的工作原理(我懷疑,因爲它在同一域名green-web.dk)我描述的解決方案正在運行的領域 - 我懷疑一些跨域問題 – H4mm3rHead 2009-11-20 07:10:58

回答

0

解決方案:

看來,clientaccesspolicy.xml文件不應該只存在於子域而且在主要領域,即:它應位於green-web.dk不僅在dsr.green-web.dk。

1

「NotFound」是Silverlight使用的一般錯誤,它可能意味着任何東西。

我鼓勵您使用名爲Microsoft Service Trace Viewer的工具來診斷您的問題,我發現這在過去絕對是無價的。可以通過Yi-Lun Luo here找到如何在帖子中使用它的詳細信息。

發現
+0

沒有得到在日誌中的任何東西 - 完全。它寫在我的webhotel上的日誌,但然後不寫更多的東西,就好像我沒有「運行」代碼 – H4mm3rHead 2009-11-20 00:12:45

+0

現在在我的日誌中獲取一些東西,只有當我在我的瀏覽器中重新加載web服務時,它顯示一個新的AppDomain卸載事件。 – H4mm3rHead 2009-11-20 00:20:11