-1

問題があり、解決策を探すのに非常に多くの時間を費やしましたが、答えがわかりません。問題は、「savefiledialog」を使用しようとしていることです.PCのローカルホストで実行すると、完全に機能し、ダイアログは問題なく表示され、動作すると思われるファイルを保存できます...しかし、iisサーバーに公開して使用しようとすると、表示されません。つまり、ダイアログsavefileが表示されず、Try Catchを入れましたが、エラーは送信されませんメッセージ、どこに問題があるのか​​ わかりません。誰かが何が起こっているのか青くなっていることを願っています. 前もって感謝します、私のコードは次のとおりです。

Protected Sub Button1_Click (sender As Object, e As System.EventArgs) Button1.Click を処理します

    Dim _newThread As New Threading.Thread(AddressOf Descarga)
    _newThread.SetApartmentState(ApartmentState.STA)
    _newThread.Start("C:\Compras\Prueba.txt")

End Sub

Private Sub Descarga(ByVal _ruta As Object)

    Dim Dialog As New System.Windows.Forms.SaveFileDialog

    Dialog.InitialDirectory = "C:\"
    Dialog.Title = "Save text Files"
    Dialog.CheckFileExists = True
    Dialog.CheckPathExists = True
    Dialog.DefaultExt = "txt"
    Dialog.Filter = "Text files (*.txt)|*.txt|All files (*.*)|*.*"
    Dialog.FilterIndex = 2
    Dialog.RestoreDirectory = True

    If Dialog.ShowDialog() = Windows.Forms.DialogResult.OK Then
        FileCopy(_ruta, Dialog.FileName)
    End If

End Sub 
4

1 に答える 1

0

Windows フォームの SaveFileDialog を使用しています。ShowDialog を実行すると、クライアント ブラウザではなく、サーバー上で開きます。

応答としてファイルをクライアントに送信する必要があります。

編集
このようなものは、クライアントにファイルを保存するように促すはずです:

Dim FileName As String = "Prueba.txt"
Dim FilePath As String = "C:\Compras\"
Dim response As System.Web.HttpResponse = System.Web.HttpContext.Current.Response
response.ClearContent()
response.Clear()
response.ContentType = "text/plain"
response.AddHeader("Content-Disposition", "attachment; filename=" + FileName + ";")
response.TransmitFile(FilePath + FileName)
response.Flush()
response.End()
于 2012-09-12T22:52:24.027 に答える