Silverlight 4.0 访问wcf数据服务时出现Silverlight安全异常
我正在制作一个silverlight应用程序,它使用部署在云上的wcf数据服务。WCF数据服务在浏览器上工作得非常好,但是当我将其用作数据服务查询来填充控件并使用loadasync方法时,我得到以下错误 我包括clientaccesspolicy.xml和crossdomain.xml,它可以访问并对所有域开放 我使用了fiddler,但它甚至没有试图检索clientaccesspolicy.xml文件,而是在这之前获取了错误 有人至少知道如何找出问题所在吗 e、 错误 {System.InvalidOperationException:处理此请求时出错。-->System.Security.SecurityException-->System.Security.SecurityException:安全错误。 位于System.Net.Browser.ClientHttpWebRequest.InternalEndGetResponse(IAsyncResult asyncResult) 在System.Net.Browser.ClientHttpWebRequest.c_DisplayClass5.b_4(对象发送状态)中 在System.Net.Browser.AsyncHelper.c_DisplayClass4.b_1中(对象发送状态) ---内部异常堆栈跟踪的结束--- 位于System.Net.Browser.AsyncHelper.BeginNoui(SendOrPostCallback beginMethod,对象状态) 位于System.Net.Browser.ClientHttpWebRequest.EndGetResponse(IAsyncResult asyncResult) 位于System.Data.Services.Http.ClientHttpWebRequest.EndGetResponse(IAsyncResult asyncResult) 位于System.Data.Services.Client.QueryResult.AsyncEndGetResponse(IAsyncResult asyncResult) ---内部异常堆栈跟踪的结束--- 位于System.Data.Services.Client.BaseAsyncResult.EndExecute[T](对象源,字符串方法,IAsyncResult asyncResult) 在System.Data.Services.Client.QueryResult.EndExecute[TElement](对象源,IAsyncResult asyncResult) 位于System.Data.Services.Client.DataServiceRequest.EndExecute[TElement](对象源,DataServiceContext上下文,IAsyncResult asyncResult) 位于System.Data.Services.Client.DataServiceQuerySilverlight 4.0 访问wcf数据服务时出现Silverlight安全异常,silverlight-4.0,azure,wcf-data-services,Silverlight 4.0,Azure,Wcf Data Services,我正在制作一个silverlight应用程序,它使用部署在云上的wcf数据服务。WCF数据服务在浏览器上工作得非常好,但是当我将其用作数据服务查询来填充控件并使用loadasync方法时,我得到以下错误 我包括clientaccesspolicy.xml和crossdomain.xml,它可以访问并对所有域开放 我使用了fiddler,但它甚至没有试图检索clientaccesspolicy.xml文件,而是在这之前获取了错误 有人至少知道如何找出问题所在吗 e、 错误 {System.Inva
1.EndExecute(IAsyncResult asyncResult)
在System.Data.Services.Client.DataServiceCollection中
1.c_DisplayClass2.b_1(IAsyncResult asyncResult)
在System.Data.Services.Client.DataServiceCollection1.c_udisplayClassd.c_udisplayClassf.b_ub()}
[System.InvalidOperationException]:{System.InvalidOperationException:处理此请求时出错。-->System.Security.SecurityException-->System.Security.SecurityException:安全错误。
位于System.Net.Browser.ClientHttpWebRequest.InternalEndGetResponse(IAsyncResult asyncResult)
在System.Net.Browser.ClientHttpWebRequest.c__DisplayClass5.b__4(对象发送状态)中
在System.Net.Browser.AsyncHelper.c__DisplayClass4.b__1(对象发送状态)中
---内部异常堆栈跟踪的结束---
位于System.Net.Browser.AsyncHelper.BeginNoui(SendOrPostCallback beginMethod,对象状态)
位于System.Net.Browser.ClientHttpWebRequest.EndGetResponse(IAsyncResult asyncResult)
位于System.Data.Services.Http.ClientHttpWebRequest.EndGetResponse(IAsyncResult asyncResult)
位于System.Data.Services.Client.QueryResult.AsyncEndGetResponse(IAsyncResult asyncResult)
---内部异常堆栈跟踪的结束---
位于System.Data.Services.Client.BaseAsyncResult.EndExecute[T](对象源,字符串方法,IAsyncResult asyncResult)
在System.Data.Services.Client.QueryResult.EndExecute[TElement](对象源,IAsyncResult asyncResult)
位于System.Data.Services.Client.DataServiceRequest.EndExecute[TElement](对象源,DataServiceContext上下文,IAsyncResult asyncResult)
位于System.Data.Services.Client.DataServiceQuery
1.EndExecute(IAsyncResult asyncResult)
在System.Data.Services.Client.DataServiceCollection1.c\u DisplayClass2.b\u 1(IAsyncResult asyncResult)
在System.Data.Services.Client.DataServiceCollection中
1.c_DisplayClassd.c_DisplayClassf.b_b()}
数据:{System.Collections.ListDictionaryInternal}
InnerException:{System.Security.SecurityException-->System.Security.SecurityException:安全错误。
位于System.Net.Browser.ClientHttpWebRequest.InternalEndGetResponse(IAsyncResult asyncResult)
在System.Net.Browser.ClientHttpWebRequest.c_DisplayClass5.b_4(对象发送状态)中
在System.Net.Browser.AsyncHelper.c_DisplayClass4.b_1中(对象发送状态)
---内部异常堆栈跟踪的结束---
位于System.Net.Browser.AsyncHelper.BeginNoui(SendOrPostCallback beginMethod,对象状态)
位于System.Net.Browser.ClientHttpWebRequest.EndGetResponse(IAsyncResult asyncResult)
位于System.Data.Services.Http.ClientHttpWebRequest.EndGetResponse(IAsyncResult asyncResult)
位于System.Data.Services.Client.QueryResult.AsyncEndGetResponse(IAsyncResult asyncResult)}
消息:“处理此请求时出错。”
StackTrace:“在System.Data.Services.Client.BaseAncResult.EndExecute[T](对象源,字符串方法,IAsyncResult asyncResult)\r\n在System.Data.Services.Client.QueryResult.EndExecute[TElement](对象源,IAsyncResult asyncResult)\r\n在System.Data.Services.Client.DataServiceRequest.EndExecute[TElement](对象源,DataServiceContext上下文,IAsyncResult asyncResult)\r\n位于System.Data.Services.Client.DataServiceQuery
1.EndExecute(IAsyncResult asyncResult)\r\n位于System.Data.Services.Client.DataServiceCollection
1.c\u DisplayClass2.b\u 1(IAsyncResult asyncResult)\r\n在System.Data.Services.Client.DataServiceCollection`1.c_DisplayClassd.c_DisplayClassf.b_b()“我遇到了同样的问题。我将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>
清除浏览器缓存后,我的clientaccesspolicy被加载,并且工作正常。
希望这有帮助我忘了提到,我用fiddler清除了浏览器缓存。用IE清除并没有解决问题。