zoukankan      html  css  js  c++  java
  • Silverlight 3.0 不再包含 asp:silverlight 控件

    从 Silverlight 2 升级到 Silverlight 3 可能会报如下错误,程序中可能引用了 asp:silverlight 控件:

    Could not load file or assembly 'System.Web.Silverlight' or one of its dependencies. The system cannot find the file specified.

    未能加载文件或程序集“System.Web.Silverlight”或它的某一个依赖项

    原因是 Silverlight 3 SDK 已经移除了 asp:silverlight 和 asp:mediaplayer,这两个控件包含在 System.Web.Silverlight.dll 这个 dll 中。

    对于升级程序

    最简单的方法是:安装 System.Web.Silverlight.dll  这个程序集。

    一 是,可以同时安装 Silverlight 2 SDK,Silverlight 2 SDK 安装包中包含了这个 dll,位于 C:\Program Files\Microsoft SDKs\Silverlight\v2.0\Libraries\Server 中,Silverlight 2 与Silverlight 3 可以并行运行(side-by-side)。

    二是,也可以直接从 http://code.msdn.microsoft.com/aspnetprojects  获取这个 dll 与源码。

    关于新程序

    微软建议使用 html 标准标签 object (以及Silverlight.js)替代 asp:silverlight,简单如下

    <object type="application/x-silverlight-2"  
    data="data:application/x-silverlight,"
    width="450" height="220">
    <param name="source" value="MySilverlightApplication.xap"/>
    </object>
    注意,FireFox 对于 data 属性,需要包含一个额外的 , (逗号)结尾。
    其他完整的属性以及参数可以参考 MSDN Silverlight 插件对象参考 
    此外,下载文档 ASP.NET Server Controls for Silverlight in the Silverlight 3 SDK 详细介绍了如何在 Silverlight 3 中用 object 来初始化 silverlight 应用程序。
    示例(见Silverlight 3 object tag param list (aka Where is my asp:Silverlight control?))
    <object data="data:application/x-silverlight-2," type="application/x-silverlight-2" width="100%" height="100%">
    <param name="source" value="ClientBin/MyApplication.xap"/>
    <param name="onError" value="onSilverlightError" />
    <param name="background" value="white" />
    <param name="minRuntimeVersion" value="3.0.40624.0" />
    <param name="autoUpgrade" value="true" />
    <param name="enableRedrawRegions" value="true" />
    <a href="http://go.microsoft.com/fwlink/?LinkID=149156&v=3.0.40624.0" style="text-decoration:none">
    <img src="http://go.microsoft.com/fwlink/?LinkId=108181" alt="Get Microsoft Silverlight" style="border-style:none"/>
    </a>
    </object><iframe id="_sl_historyFrame" style="visibility:hidden;height:0px;0px;border:0px"></iframe>
    注意上面的代码中 iframe 是为了跨浏览器兼容性。iframe 防止 Safari 缓存该页。当用户退回访问过的页面,Safari 缓存会阻止 Silverlight 插件重新加载。iframe 必须紧接着 </object>。
     
    参考
    Silverlight 3 object tag param list (aka Where is my asp:Silverlight control?)
    ASP.NET Controls in Silverlight 3
    http://silverlight.net/learn/whitepapers/
  • 相关阅读:
    五一集训——图论
    Luogu P3942 将军令
    8.14 Round 1
    8.10 Round 1
    8.9 Round 1
    8.7 Round 2
    8.7 Round 1
    8.6 Round 1
    8.5 Round 2
    FHQ-Treap
  • 原文地址:https://www.cnblogs.com/goody9807/p/1673304.html
Copyright © 2011-2022 走看看