簡體   English   中英

調試應用程序時,SIlverlight XAP文件未刷新

[英]SIlverlight XAP file not refreshing when debugging application

我在構建Silverlight應用程序(版本4)的團隊中工作。 我們使用SVN並且所有工作都在代碼的不同部分上工作,並使用最新代碼定期更新項目。 Silverlight應用程序從ASP.NET Web應用程序運行。 在更新代碼時,我們遇到了非常令人沮喪的問題。 似乎舊版本的XAP正在被緩存。

示例:Francisco更改彈出對話框的措辭,並提交更改。 一個非常簡單的變化,可能出現什么問題? 我得到了最新的代碼。 我在IDE(VS2010)中看到了新代碼並運行它。 當我查看該對話框時,它沒有新的措辭,即使我可以在我的文件中看到新的措辭。 我在更改所在的代碼上設置了斷點,但是當我運行應用程序時,斷點被禁用!

我嘗試使用Silverlight和Web主機的Clean構建。 我殺了我的本地ASP.NET開發服務器。 我運行應用程序 - 同樣的事情! 我從ClientBin中刪除了xap。 不好。 我們團隊中的每個人都遇到了這個問題。 現在我們偶爾解決它,但永遠不確定究竟什么是固定的東西,這是不令人滿意的。

必須有一些設置或我們缺少的東西。 你會認為刪除ClientBin xap文件會解決它,因為新的XAP必須來自編譯Silverlight應用程序,對吧?

如果你以前見過這個問題並有一個真正的解決方案,請告訴我。 (不會接受“格式化硬盤並重新安裝所有內容”的解決方案!)

謝謝,

丹尼爾威廉姆斯

我建議您使用IE進行Silverlight開發。 另見這個答案

使用Firefox進行開發的問題是Firefox在一個單獨的進程(plugin-container.exe)中運行插件。 啟動調試器時,VS不知道Silverlight將不會從它啟動的進程中運行,因此它不會附加到正確的進程。 Silverlight代碼中的斷點似乎不起作用,因為VS調試器未附加到運行Silverlight代碼的任何進程。

我相信這是可能的禁止使用的插件,container.exe過程(參見,例如,LIMPET235的帖子在這里 ),但不會修復明顯緩存你也遇到了。

我曾經使用Firefox進行Silverlight開發,但是當我切換到使用IE時,我發現事情運行得更順暢。

幾件事要檢查。

  • 確保silverlight項目的輸出路徑正確。
  • 確保您的silverlight應用程序已添加到您的Web應用程序項目中。
  • 在您的Web應用程序項目中啟用silverlight調試。
  • 將silverlight項目設置為Web應用程序設置中的依賴項

首先,請您檢查一下您的.xap文件是否也包含在源代碼管理中? 它不應該包括在內......,不需要恕我直言。 您的xap文件很可能設置為只讀。 轉到該文件位置並使ClientBin文件夾不是只讀的。

在緩存XAP文件之前我已經看過了。 嘗試清空瀏覽器緩存,然后在XAP上放置查詢字符串。 所以你的XAP參考看起來像Foo.xap?1234

“格式化您的硬盤並重新安裝所有內容”的解決方案將不被接受!

格式化硬盤並安裝Linux(:

更重要的是,在SomeSilverlightApp.Web項目中配置Silverlight應用程序選項卡,將xap文件從SomeSilverlightApp項目復制到ClientBin文件夾,該文件夾默認顯示在那里。

在我的情況下,ClientBin文件夾也是SomeSilverlightApp.Web項目的一部分,xap屬性設置為CopyToOutputDirectory:Always以便它也被部署。

這可能不是正確的解決方案,但它在這里工作,我沒有時間嘗試調查這個奇怪的邏輯。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM