【发布时间】:2010-07-22 05:08:55
【问题描述】:
我的 Silverlight (4.0) 应用程序(由 ASP.NET 网站托管)使用 4 个项目,它们都使用一个带有程序集版本的文件:
[assembly: AssemblyVersion("1.0.*")]
当前显示的应用程序版本为1.0.3842.38865,但最近上传到服务器较新的版本(1.0.3854.42448)。
问题是浏览器在部署到服务器后没有加载新的 Silverlight 应用程序。
这是用于“渲染”silverlight-html-loader 的 HTML 代码(不确定名称是否正确):
<div id="silverlightControlHost" style="height:950px">
<object data="data:application/x-silverlight-2," type="application/x-silverlight-2" width="100%" height="100%">
<param name="source" value="/ClientBin/VfmElitaSilverlightClientApplication.xap"/>
<param name="onError" value="onSilverlightError" />
<param name="background" value="white" />
<param name="initParams" value="adr=squad,team=811,match=3217203" />
<param name="minRuntimeVersion" value="3.0.40624.0" />
<param name="autoUpgrade" 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;width:0px;border:0px"></iframe>
我尝试将参数添加到包含上次 XAP 文件修改时间的对象的“源”参数:
<param name="source" value="/ClientBin/VfmElitaSilverlightClientApplication.xap?Ver=2010072243523AM"/>
导致 Silverlight 应用程序加载出错:
Silverlight 中未处理的错误 申请代码:2103 类别: 初始化错误消息: 无效或格式错误的应用程序: 检查清单
您能否建议如何强制浏览器从服务器获取新应用程序(没有浏览器缓存操作,我想保留浏览器缓存选项)?
非常感谢!
附:有必要补充一点,silverlight 应用程序可以在我的本地主机上正常工作(上传和启动),而无需任何参数。只有当我将它上传到网站时 - 它不会被浏览器重新加载。并向 xap 文件路径添加其他参数 - 在 localhost 上不起作用。
【问题讨论】:
-
在重新加载网站时重新加载应用程序。你想强制执行吗?或者甚至网站的重新加载都不起作用?
-
是的,网站重新加载不会导致 silverlight 应用程序重新加载
标签: .net asp.net silverlight