1

(POST メソッドで) ファイルを別のアプリケーションに送信できる C#.net Web アプリケーションがあります。2 番目のアプリケーションには、投稿されたファイルを取得するための以下のコードがあります。

HttpPostedFile hpf = Request.Files[0];

これで、コードでファイルを保存できます

hpf.SaveAs("The path to be saved");

しかし、ここに保存せずに別のアプリケーションに再度送信する必要があります(2 番目の appln に保存せずに、3 番目の appln に送信する必要があります)。

(これで、2 番目のアプリケーションでファイルを保存し、そこから 1 番目のアプリケーションで行ったのとまったく同じパスを指定して 3 番目のアプリケーションにポストすることができます。しかし、別の解決策が必要です。)

hpf.fileName を試しましたが、ファイル名 (例:test.txt) のみを指定します。以下のように試したところ

string file = hpf.FileName;
string url = "the url to send file";
    using (var client = new WebClient())
    {
        byte[] result = client.UploadFile(url, file);
        string responseAsString = Encoding.Default.GetString(result);
    }

「WebClient リクエスト中に例外が発生しました」のような WebException が発生しました。

C# .net でそれを行う方法はありますか?

4

2 に答える 2

2

前の回答で提案されているように Web サービスを使用したくない場合は、HttpPostedFile の InputStream プロパティを使用する必要があります。ファイルコンテンツでリクエストを作成するには、HttpWebRequest オブジェクトを使用する必要があります。thisthisを含む多くの投稿とチュートリアルがあります。

于 2013-04-03T13:39:03.733 に答える