Silverlight3 Breaking Change

Damir Dobric Posts

Next talks:



Follow me on Twitter: #ddobric




If you have developed SIlverlight < 3.0 apps, you might (sometimes) notice that some of them will not work on Silverlight 3.0
One of issues which causes this problem is the fact the Microsoft has decided to remove Silverlight.Dll from Silverlight SDK. This DLL has been build as a helper assembly for ASP.NET with support for dynamic adding of Silverlight and Media controls to the page.

In other words, following is no more supported in SL3:

<asp:silverlight ../>
<asp:mediaplayer ../>

Existing Silverlight applications will continue to have the System.Web.Silverlight assembly in their Web application’s BIN folder, even if the Silverlight 2 SDK is uninstalled. Therefore upgrading to Silverlight 3 SDK will not remove this local assembly and applications should continue to work.

If you want you could reference the System.Web.Silverlight assembly manually and use required controls. However, these controls will not provide the latest installation logic, or be able to render iframes for Silverlight history support.

Following example shows how to add Silverlight control in SL3:

<div id="silverlightControlHost">
    <object data="data:application/x-silverlight-2," type="application/x-silverlight-2" width="100%" height="100%">
     <param name="source" value="{XAP_FILE}"/>
         <param name="onerror" value="onSilverlightError" />
         <param name="background" value="white" />
         <param name="minRuntimeVersion" value="{BUILD}" />
          <param name="autoUpgrade" value="true" />
          <a href="{BUILD}" style="text-decoration: none;">
               <img src="" alt="Get Microsoft Silverlight" style="border-style: none"/>
        <iframe id="_sl_historyFrame" style='visibility:hidden;height:0;width:0;border:0px'></iframe>

Posted Aug 06 2009, 12:53 AM by Damir Dobric is a .Net Community Blog powered by daenet GmbH.