成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

跨域引用Silverlight相關問題解疑

開發 開發工具
跨域引用Silverlight在實際應用中會出現異常,通常表現為不能展現出已下載的Xap包中的內容。在這里將會針對這一問題給出相應的應對措施。

Silverlight開發工具的應用領域比較廣發。不過即使是這樣一款功能強大的工具,在使用的時候同樣也會造成一些問題的產生。比如跨域引用Silverlight時,就會出現一些令人頭疼的問題。跨域引用Silverlight,即將Silverlight包部署在A域下,卻由在B域下的網站引用。其中Silverlight通過HTML.Window調用了腳本方法。#t#

示例代碼

 

  1. public partial class Page : 
    UserControl  
  2. {  
  3. public Page()  
  4. {  
  5. InitializeComponent();  
  6. }  
  7. private void Button_Click
    (object sender, RoutedEventArgs e)  
  8. {  
  9. HtmlPage.Window.Alert("hi");  
  10. }  

跨域引用Silverlight異常描述

進入B域頁面,沒有看到Silverlight展現,右鍵點擊相應區域,顯示“Silvelight”,說明Silverlight區域已經被渲染出來。通過HTTP Watch查看,發現Xap包已經被請求并下載下來,但就是沒有展現。

Silverlight正常顯示,但點擊按鈕后,并不彈出對話框。調試發現,在HtmlPage.Window.Alert("hi");拋出異常,異常信息為“已禁用DOM/腳本橋”。

跨域引用Silverlight問題解決

加載卻不展示,是由于在A網站下沒有給Silverlight配置正確的MIME類型。當引用不同域下的Silverlight包,Silverlight Runtime會檢測XAP的HTTP頭中的MIME類型。正確的類型是“application/x-silverlight-app”,如果配為“application/x-silverlight-2”(這似乎是舊版本的MIME配置),同樣不能正常顯示。IIS7由于默認帶有Xap的MIME類型配置,所以不會出現此類問題。

不能正常彈出Alert對話框,但如果改成MessageBox.Show("Click");卻可以正常運行。這是因為需要配置Silverlight以及Host Silverlight的頁面的幾個參數,使得Silverlight中的ManagedCode和頁面中的Javascript和DOM code可以交互。而在同域下,這幾個參數或者是默認配置好的,或者就是干脆無效,所以不需要配置。具體可參考(Security Settings in HTML Bridge),具體到這里的情況,就是要在頁面中配置enableHtmlAccess屬性,使在Silverlight的Manage code里可以操縱外部Dom對象。

Asp.net頁面:

  1. < asp:Silverlight ID="Xaml1" HtmlAccess="Enabled" 
    runat="server"Source=http://localhost:2300/
    ClientBin/SilverlightApplication.xap 
    MinimumVersion="2.0.31005.0" Width="100%" 
    Height="100%" />HTML頁面: 
  2. < object data="data:application/x-silverlight-2," 
    type="application/x-silverlight-2" 
    width="80%" height="80%" > 
  3. < param name="enableHtmlAccess" value="true" /> 
  4. < param name="source" value="http://
    localhost:2300/ClientBin/Silverlight
    Application.xap"
    /> 
  5. < param name="onerror" value="onSilverlightError" /> 
  6. < param name="background" value="white" /> 
  7. < param name="minRuntimeVersion" 
    value="2.0.31005.0" /> 
  8. < param name="autoUpgrade" value="true" /> 
  9. < a href="http://go.microsoft.com/
    fwlink/?LinkID=124807"
     style="text-
    decoration: none;"
    > 
  10. < img src="http://go.microsoft.com/
    fwlink/?LinkId=108181"
     alt="Get Microsoft 
    Silverlight"
     style="border-style: none"/> 
  11. < /a> 
  12. < /object> 

以上就是我們為大家帶來的跨域引用Silverlight相關問題解決辦法。

責任編輯:曹凱 來源: 博客園
相關推薦

2009-12-31 15:28:02

Silverlight

2010-01-04 15:27:45

Silverlight

2010-02-05 16:07:52

C++多態覆蓋

2010-01-04 16:23:42

Silverlight

2010-02-24 10:55:01

WCF跨域訪問

2009-12-21 10:19:05

Silverlight

2009-12-07 10:05:22

PHP session

2010-01-20 14:52:21

VB.NET修改數據窗

2010-02-22 17:29:47

WCF跨域

2009-02-04 18:20:42

服務器虛擬化VMware

2010-03-15 17:17:29

Java線程池

2010-02-02 13:20:33

C++對象傳遞

2010-07-30 12:40:00

Flex跨域訪問

2009-12-31 15:08:22

Silverlight

2009-12-02 19:14:07

PHP header

2009-12-22 11:21:43

WCF跨域訪問

2017-08-20 12:49:59

瀏覽器跨域服務器

2009-12-01 15:41:16

PHP substr截

2009-12-08 10:33:23

PHP應用問題

2021-06-06 13:05:15

前端跨域CORS
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 成人精品视频免费 | 草久久免费视频 | 一区二区三区在线免费 | 国产福利视频网站 | 男女羞羞免费视频 | 国产精品亚洲视频 | 中文字幕的av | 国产日韩欧美一区二区 | 亚洲一区二区黄 | 国产午夜精品一区二区三区嫩草 | 免费av观看| 国产日韩欧美 | 免费久 | 精品久久久久久久久久 | 欧美一区二区三区在线 | 国产人免费人成免费视频 | 夜夜爽夜夜操 | 久久久精品视频一区二区三区 | 欧美精品一区二区在线观看 | 亚洲欧美日本在线 | 国产精品久久久精品 | 国产精品久久久久久久久久久久 | 国产一卡二卡三卡 | 国产午夜精品福利 | 不卡av电影在线播放 | 国产精品91久久久久久 | 亚洲最色视频 | 精品久久久久久亚洲精品 | 99精品国产一区二区三区 | 国产综合精品 | 天天影视综合 | 成人精品一区二区 | 精品一区二区久久 | 中文字幕国产一区 | 亚洲欧美一区二区三区在线 | 羞羞午夜 | 日韩精品一区二区三区中文在线 | 国产精品99久久久久久宅男 | 欧美日韩91 | 韩日av在线 | 久久99久久98精品免观看软件 |