6

私はインターネットを検索してきましたが、有用な答えが見つかりませんでした。

サーバーにデプロイされた ASP.NET Web サイトがあります。サーバー上の ASP.NET Web サイトは、 W:/ というディレクトリにアクセスできます。社内のクライアントは Web サイトにアクセスできます。Web サイトでは、ListBox に W:/ ディレクトリのすべての PDF ファイルが一覧表示されます。クライアントは、リストボックスから PDF ファイルを選択し、場所を選択してローカル PC に保存できる必要があります。

Web ページにファイルとして保存するようなもの。

解決策または回避策を教えてください。

4

5 に答える 5

5

最後に、ASP.NET からファイルをダウンロードするように保存ダイアログ ボックスを表示する記事を見つけました。

ここに投稿すると、他の人にも役立ち、時間を節約できます。

 String FileName = "FileName.txt";
 String FilePath = "C:/...."; //Replace this
 System.Web.HttpResponse response = System.Web.HttpContext.Current.Response;
 response.ClearContent();
 response.Clear();
 response.ContentType = "text/plain";
 response.AddHeader("Content-Disposition", "attachment; filename=" + FileName + ";");
 response.TransmitFile(FilePath);
 response.Flush();
 response.End();
于 2012-10-11T07:34:34.160 に答える
0

W ドライブから byte[] でファイルの内容を取得し、ローカル ファイルに書き込みます。

byte[] data = File.ReadAllBytes(WDriveFilePath)

FileStream file = File.Create(HttpContext.Current.Server.MapPath(MyLocalFile)); 

file.Write(data, 0, data.Length); 
 file.Close(); 
于 2012-10-11T07:16:56.043 に答える
0

ファイルを取得するためにこのようなことをしました。

protected void btnExportFile_Click(object sender, EventArgs e)
        {
            try
            {
                Thread newThread = new Thread(new ThreadStart(ThreadMethod));
                newThread.SetApartmentState(ApartmentState.STA);
                newThread.Start();     

               // try using threads as you will get a Current thread must be set to single thread apartment (STA) mode before OLE Exception .


            }
            catch (Exception ex)
            {

            }

        }

        static void ThreadMethod()
        {
            Stream myStream;
            SaveFileDialog saveFileDialog1 = new SaveFileDialog();
            saveFileDialog1.FilterIndex = 2;
            saveFileDialog1.RestoreDirectory = true;

            if (saveFileDialog1.ShowDialog() == DialogResult.OK)
            {
                if ((myStream = saveFileDialog1.OpenFile()) != null)
                {
                    // Code to write the stream goes here.
                    myStream.Close();
                }
            }
        }
于 2014-09-26T12:13:12.317 に答える
0

正しいキーワードは "File Browser asp.net" で、ソース コードを含む多くの例を見つけることができます。

これはcodeprojectからのものです:

http://www.codeproject.com/Articles/301328/ASP-NETUser-Control-File-Browser

于 2012-10-11T06:32:58.800 に答える