0

ファイルを [Webmethod] に渡し、その中に入ったら、電子メールの添付ファイルとして送信したいと思います。

どうすればこれを行うことができますか?どこから始めればよいかわかりません。

FileUpload1.PostedFile.FileNameFileUpload1.FileContentは、[webmethod] に渡したい 2 つのものです。

私の問題はFileUpload1.FileContent です。これは、すでにFileUpload1.PostedFile.FileNameを文字列として送信できるためです。

lblEmailSent.Text = Send.Sendemail(txtTo.Text, txtSubject.Text, txtbody.Text, FileUpload1.PostedFile.FileName, FileUpload1.FileContent);

私の Call ステートメントは青で下線が引かれ、与えられた 2 つのエラーは次のようになります。

* 1) * 'WebTestServiceApp.localhost.Service1.Sendemail(string, string, string, string, WebTestServiceApp.localhost.Stream)' に一致する最適なオーバーロードされたメソッドには、いくつかの無効な引数があります

* 2) *引数 5: 'System.IO.Stream' から 'WebTestServiceApp.localhost.Stream' に変換できません

FileUpload1.FileContentを [Webmethod] に送信する方法を教えてください。

前もって感謝します。

4

1 に答える 1

2

私のアドバイスは次のとおりFileUploadです。これは、システムによって base-64 として処理されるはずです。byte[]string

a からandにFileUploadアクセスできる必要があり、などをいじる必要がなくなります。.FileBytes.FileNameStream

受信側で (byte[]パラメーターを使用して)、単純に:

using(var stream = new MemoryStream(theByteArray)) {...}
于 2012-05-04T07:28:13.483 に答える