2011-03-01 67 views
0

我編寫了一些包含一種方法的WCF服務。 該方法沒有得到任何參數 - 但返回字符串。從Silverlight應用程序使用WCF服務失敗

嘗試通過silverlight應用程序調用此服務 - 並且我收到了有關「跨域訪問策略」的例外情況。

我google它,我發現我需要添加'clientaccesspolicy.xml'到服務根目錄(WCF根應用程序) - 所以我做了...並仍然得到相同的異常。

(我使用.NET 4.0和使用IIS 7.5我的服務)

感謝您的幫助。

回答

1

看到:
http://msdn.microsoft.com/en-us/library/cc645032%28VS.95%29.aspx

您可能需要的crossdomain.xml以及clientaccesspolicy.xml。

例如的crossdomain.xml

<?xml version="1.0"?> 
<!DOCTYPE cross-domain-policy SYSTEM "http://www.macromedia.com/xml/dtds/cross-domain-policy.dtd"> 
<cross-domain-policy> 
    <allow-http-request-headers-from domain="*" headers="*"/> 
</cross-domain-policy> 

和clientaccesspolicy.xml

<?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> 

還要檢查此鏈接:
http://timheuer.com/blog/archive/2008/04/06/silverlight-cross-domain-policy-file-snippet-intellisense.aspx

仔細檢查所需的文件是在正確的路徑。我曾經遇到過一個Flash應用程序出現這個問題,它只是因爲xml文件位於錯誤的目錄中而一直崩潰。

+0

這正是我所做的...仍然這不工作。 – Yanshof 2011-03-01 12:23:15

相關問題