.net – Silverlight:如何强制浏览器下载更新的客户端版本?

.net – Silverlight:如何强制浏览器下载更新的客户端版本?,第1张

概述我的Silverlight(4.0)应用程序(由ASP.NET网站托管)使用4个项目,它们都使用一个文件和程序集版本: [assembly: AssemblyVersion("1.0.*")] 当前显示的应用程序版本为1.0.3842.38865,但较新的应用程序(1.0.3854.42448)最近上传到服务器. 问题是浏览器在部署到服务器后不会加载新的Silverlight应用程序. 这是一个H 我的Silverlight(4.0)应用程序(由ASP.NET网站托管)使用4个项目,它们都使用一个文件和程序集版本:

[assembly: AssemblyVersion("1.0.*")]

当前显示的应用程序版本为1.0.3842.38865,但较新的应用程序(1.0.3854.42448)最近上传到服务器.

问题是浏览器在部署到服务器后不会加载新的Silverlight应用程序.

这是一个HTML代码,用于“渲染”silverlight-HTML-loader(不确定它是否是正确的名称):

<div ID="silverlightControlHost" > <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" >       <img src="http://go.microsoft.com/fwlink/?linkID=108181" alt="Get Microsoft Silverlight" />   </a> </object> <iframe ID="_sl_historyFrame" ></iframe>

 

我试图在包含上次XAP文件修改时间的对象的“source”参数中添加一个参数:

<param name="source" value="/ClIEntBin/VfmElitaSilverlightClIEntApplication.xap?Ver=2010072243523AM"/>

这导致Silverlight应用程序加载错误:

Unhandled Error in Silverlight
Application Code: 2103 category:
InitializeError Message:
InvalID or malformed application:
Check manifest

你能否告诉我如何强制浏览器从服务器获取新的应用程序(没有浏览器缓存 *** 作,我想保留浏览器缓存选项)?

非常感谢你!

附:有必要添加silverlight应用程序在我的localhost上工作(上传和启动)没有任何参数跳舞.只有当我将其上传到网站时 – 它才会被浏览器重新加载.并在xap文件路径中添加其他参数 – 对localhost无效.

解决方法 我们目前使用的是以下内容,它获取.xap文件的最后写入时间并将其附加到source-param:

<object ... >        <%            var source = "ClIEntBin/App.xap";            string param;            if (System.Diagnostics.DeBUGger.IsAttached)                param = string.Format("<param name=\"source\" value=\"{0}\" />",source);            else            {                var path = httpContext.Current.Server.MapPath(string.Empty) + "\" + source;                var xapCreatedAt = System.IO.file.GetLastWriteTime(path);                param = string.Format("<param name=\"source\" value=\"{0}?version={1}\" />",source,xapCreatedAt.ToString("yyyyMMddTHHmmssfff"));            }            Response.Write(param);        %>        <param ...
总结

以上是内存溢出为你收集整理的.net – Silverlight:如何强制浏览器下载更新的客户端版本?全部内容,希望文章能够帮你解决.net – Silverlight:如何强制浏览器下载更新的客户端版本?所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/1209221.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-06-04
下一篇 2022-06-04

发表评论

登录后才能评论

评论列表(0条)

保存