2012-05-08 11 views
2

ローカルシステムで1つのファイルをアップロードしてダウンロードするためにFileUpLoad()やFileDownLoad()などの2つのメソッドを記述しました。IISでファイルをダウンロードするには?

void FileUpLoad() 
{ 
    string hfBrowsePath = fuplGridDocs.PostedFile.FileName; //fuplGridDocs is a fileupload control 
    if (hfBrowsePath != string.Empty) 
    { 
     string destfile = string.Empty;    
     string FilePath = Path.Combine(@"E:\Documents\");    
     FileInfo FP = new FileInfo(hfBrowsePath); 
     hfFileNameAutoGen.Value = PONumber + FP.Extension; 
     destfile = FilePath + hfFileNameAutoGen.Value; //hfFileNameAutoGen is a hidden field 
     fuplGridDocs.PostedFile.SaveAs(destfile); 
    } 
} 

void FileDownLoad(LinkButton lnkFileName) 
{ 
    string filename = lnkFileName.Text; 
    string FilePath = Path.Combine(@"E:\Documents", filename); 
    fuplGridDocs.SaveAs(FilePath); 
    FileInfo fileToDownLoad = new FileInfo(FilePath); 

    if (fileToDownLoad.Exists) 
    { 
     Process.Start(fileToDownLoad.FullName); 
    } 
    else 
    { 
     lblMessage.Text = "File Not Saved!"; 
     return; 
    } 
} 

IISでそれをホスティングする前にアプリケーションを実行している間、私は目的の場所にファイルをアップロードすることができ、また、保存した場所からファイルを取得することができます。しかし、それをローカルホストに公開した後は、ファイルをアップロードすることしかできません。保存したファイルをダウンロードできませんでした。例外もありません。アップロードされたファイルは、目的の場所に保存されます。私はなぜそれがファイルを取得していないのか分からないのですか?なぜIISでファイルをダウンロードできないのですか?私はインターネットで多くを検索しましたが、解決策を見つけることができませんでした。これを解決するには?私はWindows XPとIIS 5.1バージョンを使用しています。

答えて

2

このサイトをサーバーに展開したときに、WebアプリケーションでProcess.Startを実行すると、クライアントPCではなくサーバー上で画像を開くだけで、どのようにWebアプリケーションが動作すると思いますか。 http://www.codeproject.com/Articles/74654/File-Download-in-ASP-NET-and-Tracking-the-Status-o

はまた、ダウンロードしたファイルは、Eの後にスラッシュが欠落しています:

私はこれがあなたの質問にお答えすると思います\ドキュメント

0

別のオプションは、IISにMIME種類

をあなたのワイルドカードを追加することです
関連する問題