Обновления Silverlight 3 вне браузера
-
12-09-2019 - |
Вопрос
У меня есть несколько пользователей, использующих приложение Silverlight, которые не получают обновления при публикации новой версии.Разве это не должно происходить автоматически или, возможно, я где-то упускаю какой-то вариант?Я также начал думать, что, возможно, файл XAP кэшируется, и мне нужно как-то это предотвратить.
Есть какие-нибудь мысли?
Решение
Вам нужно написать несколько строк кода.
Если вы знакомы с развертыванием «одним щелчком мыши», то некоторые из опций, к которым вы привыкли, не существуют в Silverlight.Вам нужно написать код самостоятельно.
http://nerddawg.blogspot.com/2009/07/silverlight-out-of-browser-apps-how.html
private void Application_Startup(object sender, StartupEventArgs e)
{
this.RootVisual = new MainPage();
if (Application.Current.IsRunningOutOfBrowser)
{
Application.Current.CheckAndDownloadUpdateAsync();
}
а потом в твоем App()
конструктор:
Application.Current.CheckAndDownloadUpdateCompleted +=
new CheckAndDownloadUpdateCompletedEventHandler(Current_CheckAndDownloadUpdateCompleted);
и обработчик событий:
void Current_CheckAndDownloadUpdateCompleted(object sender, CheckAndDownloadUpdateCompletedEventArgs e)
{
// http://nerddawg.blogspot.com/2009/07/silverlight-out-of-browser-apps-how.html
if (e.UpdateAvailable)
{
MessageBox.Show("The application has been updated! Please close and reopen it to load the new version.");
}
else if (e.Error != null && e.Error is PlatformNotSupportedException)
{
MessageBox.Show("An application update is available, " +
"but it requires a new version of Silverlight. " +
"Please contact tech support for further instructions.");
}
}
Другие советы
Он обновляется автоматически только в том случае, если разработчик выполняет вызов CheckAndDownloadUpdateAsync().Смотрите обновления: http://timheuer.com/blog/archive/2009/07/10/silverlight-3-released-what-is-new-and-changed.aspx#oob