0
我有一個lightswitch應用程序需要從它的WCF Ria生成Crystal Report。在開發運行時,我能夠正確生成,沒有錯誤,但是當我將其推送到釋放環境時,它會提示錯誤 - 無效的跨線程訪問。發佈中的無效跨線程訪問
我已經讀過一些文章,這是非常有可能的Silverlight UI線程問題
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());
}
}
我這樣做是否有誤?請幫助我確定這一點。
由於提前
山姆