0

Visual Studio 2010中,我通过选择“ Silverlight Business Application ”模板创建了一个 Silverlight 应用程序。

我更改了Home.xaml.cs中的一些代码,关闭了 Visual Studio,再次打开它,然后开始进行更多更改。

但是现在我对代码所做的更改根本没有生效。就好像整个应用程序都被缓存了一样。我什至可以删除 Home.xaml.cs 文件的全部内容,使其为空白,然后按 F5 显示我原来的 Silverlight 应用程序。这在 Firefox 和 Chrome 中都会发生。我已经重建,删除了 bin 目录,但它一直向我显示相同的旧应用程序。

我需要在此模板中进行哪些更改,以便我可以对代码进行更改,并在应用程序中看到它们的反映?

附录:

我创建了一个新的 Silverlight 业务应用程序,将所有代码复制到其中,并在第一次更改后缓存。

所以我想到进入BusinessApplicationTestPage.asp并更改 .xap 文件的链接:

<param name="source" value="ClientBin/BusinessApplication4.xap?id=111"/>

所以我已经“修复”了这个问题,因为我每次运行应用程序时都会更改 id。我想我可以在这里放一个随机数生成器,这样它每次都会刷新。但是……这是故意的吗?没有这种缓存是否有更简单的开发方法,然后只有在部署到这样的缓存时?

更新:

好的,只需添加?id=111一次,它现在就可以识别每个更改。也许...

4

2 回答 2

0

我知道这不是一个理想的解决方案,但我发现 IE9 Beta 缓存 XAP 的速度远低于其他浏览器,并且在其中运行我的 Silverlight 应用程序时我不会遇到这个问题。

于 2010-11-27T02:33:52.773 回答
0

首先在 IE 中使用 Control-F5。这不仅会刷新页面,还会清除浏览器缓存,因此理论上您将下载新版本。


如果仍然发生这样的怪事,您需要删除这些文件夹的内容......

  • C:\Windows\Microsoft.NET\Framework\v2.0.50727\Temporary ASP.NET 文件
  • C:\Windows\Microsoft.NET\Framework\v4.0.30319\Temporary ASP.NET 文件

这是旧版本 Visual Studio 中众所周知的痛点,以至于我认识的大多数 Web 开发人员都有专门用于清理这些目录的批处理文件。


这些文件夹存在以便您可以在应用程序仍在运行时更改 ASP.NET 应用程序。IIS 将检测更改的文件并将它们复制到临时目录,同时静默地重新启动您的网站。唉,这并不总是能正常工作,尤其是在 IDE 下运行时。

于 2010-08-12T08:39:10.937 回答