2012-04-18 2 views
0

У меня есть приложение lightwitch, которое должно генерировать Crystal Report из его WCF Ria. В ходе выполнения разработки я могу корректно генерировать ошибки без ошибок, но когда я нажимаю его для выпуска среды, он вызывает ошибку - недопустимый сквозной доступ.неверный доступ к перекрестным потокам в выпуске

Я прочитал некоторые статьи уже и это очень вероятно, Silverlight UI проблема Thread

partial void GenerateReport_Execute() 
    { 
     try 
     { 
      GenerateCrystalReport.Load(); 

      var temp = DataWorkspace.QUMCrystalReportDomainData.GenerateCrystalReport(SearchQuery.SelectedItem.GroupId, sQuarter, sYear, eQuarter, eYear); 

      System.Windows.Deployment.Current.Dispatcher.BeginInvoke(delegate() 
      { 
       var uri = new Uri("C:\\Temp\\ReportTest.pdf", UriKind.RelativeOrAbsolute); 

       if (AutomationFactory.IsAvailable) 
       { 
        var shell = AutomationFactory.CreateObject("Shell.Application"); 

        shell.ShellExecute(uri.ToString()); 

       } 
       else if (!System.Windows.Application.Current.IsRunningOutOfBrowser) 
       { 
        HtmlPage.Window.Navigate(uri, "_blank"); 
       } 
       else 
       { 
        throw new InvalidOperationException(); 
       } 
      }); 
     } 
     catch (Exception ex) 
     { 
      MessageBox.Show(ex.ToString());     
     } 

    } 

Могу ли я неправильно делаю? пожалуйста, помогите мне определить это.

Заранее спасибо

Сэм

ответ

0

Отвечая на мой вопрос, в основном, что MessageBox на дне вызывает проблему UI.

Диспетчер Lightswitch не такой, как диспетчер wpf (что использует этот почтовый ящик), пожалуйста, исправьте, если я ошибаюсь

Смежные вопросы