1

SL5 ポップアップに奇妙な問題があります。

私の SL5 アプリは動作し、他のドメインにある WCF サービスからデータをフェッチします。ボタンを 1 回クリックすると、何らかのサービス メソッドが呼び出され、ファイルのパスが返されます。サービスから戻ると、result を使用してポップアップ ウィンドウが開きます。ユーザーがインスタンス化したものではないため、これを実現するために次のコードが使用されます

new Repository().SaveExporttoExcelData(builder.ToString(), (result) =>
                {
                    this.Dispatcher.BeginInvoke(() =>
                    {
                        var options = new System.Windows.Browser.HtmlPopupWindowOptions();
                        options.Left = 0; options.Top = 0; options.Width = 80; options.Height = 60;

                        string servicePath=  path;
                        if (result != null)
                        {
                            string excelPath = servicePath.Replace("\\","/") +"/"+ result.ToString();
                            System.Windows.Browser.HtmlPage.Window.Eval(string.Format("window.open('{0}','{1}','{2}')", excelPath, "new", options.ToString()));
                        }
                        else
                        {
                            MessageDialog.Show("Error in downloading file. Please try again.");
                        }
                    });
                });

VS から SL5 アプリを実行していて、サービスが prod サービス環境を指している場合、これは正常に機能します。しかし、本番 Web で xap をホストすると、同じ SL が機能しません。私はcitrixを使用していますが、Webがホストされている同じネットワークからも同じことが機能します。ポップアップを開く前に、プロキシ接続も閉じました。

URL が正常に生成され、しばらくポップアップが表示され、ファイルをダウンロードせずに閉じます。URL をコピーしてブラウザで開くと、ファイルをダウンロードできます。ポップアップ ブロッカーの設定とプロキシ接続を確認しました。

4

0 に答える 0