Silverlight 3浏览器之间的不同行为

时间:2009-11-23 22:50:16

标签: c# silverlight silverlight-3.0 prism

我有一个正常运行的silverlight项目,它只是一个检索某些值的列表框。此项目在Internet Explorer中正确运行,但在Safari 4或Firefox 3.5中无法正常运行.... Silverlight在行为方面是否有所不同,从浏览器到浏览器会有所不同?

这是非IE浏览器中发生的错误

  

拒绝设置不安全标头“Accept-Charset”错误:   System.InvalidOperationException:保存时发生错误   变化。有关详细信息,请参阅内部异常--->   System.Data.Services.Http.WebException:内部错误   'HttpWebResponse.NormalizeResponseStatus'。

     

在   System.Data.Services.Http.HttpWebResponse.NormalizeResponseStatus(的Int32&安培;   的StatusCode)

     

at System.Data.Services.Http.HttpWebResponse..ctor(HttpWebRequest)   request,Int32 statusCode,String responseHeaders)

     

at System.Data.Services.Http.HttpWebRequest.CreateResponse()

     

在   System.Data.Services.Http.HttpWebRequest.EndGetResponse(IAsyncResult的   asyncResult)

     

在   System.Data.Services.Client.QueryAsyncResult.AsyncEndGetResponse(IAsyncResult的   asyncResult)

     

---内部异常堆栈跟踪结束---

     

在System.Windows.Browser.ManagedObjectInfo.Invoke(ManagedObject   obj,InvokeType invokeType,String memberName,ScriptParam [] args)

     

在System.Windows.Browser.ManagedObject.Invoke(InvokeType   invokeType,Int32 memberID,ScriptParam [] args)

     

在   System.Windows.Hosting.ScriptingInterface.InvokeScriptableMember(ManagedObject   obj,InvokeType invokeType,Int32 memberID,ScriptParam [] args,   ScriptParam&安培; pResult)

     

在System.Windows.Hosting.ManagedHost.InvokeScriptableMember(IntPtr)   pHandle,Int32 nMemberID,Int32 nInvokeType,Int32 nArgCount,   ScriptParam [] pArgs,ScriptParam& pResult,ExceptionInfo& pExcepInfo)

2 个答案:

答案 0 :(得分:2)

Silverlight使用主机浏览器提供的HTTP堆栈来访问服务器中的数据。因此,HTTP从一个浏览器到另一个浏览器的行为方式可能会有所不同。这看起来可能就是这种情况。

答案 1 :(得分:1)

除了Anthony编写的内容之外,您还可以从浏览器HTTP堆栈切换,该堆栈默认使用Silverlight HTTP堆栈(在Silverlight 3中引入,AFAIR)。

只要我遇到类似的问题并找到解决方案,我就用一些代码示例写了一篇post详细说明。