画像をWebサイトにアップロードする機能を設計しようとしています。ASP.NET 3.5、C#、およびWCFを使用しています。
私は次のことを達成するように求められました:
1)アップローダーをWebサービスにします
。2)ファイルがアップロードされたら、進行状況の更新をユーザーに返します。
3)他の関連するユーザーが選択したオプションをデータベースに記録します。
そこで、以下のサービス契約を使用してWCFWebクライアントを作成することから始めました。
IService.UploadPictures(HttpRequest request);
private UploadServiceClient upload;
protected void Page_Load(object sender, EventArgs e)
{
upload = new UploadServiceClient();
upload.UploadPictures(Request.Files);
}
コンパイルすると、次のエラーが発生します。
タイプ「System.Web.HttpRequest」はシリアル化できません。DataContractAttributeでマークを付け、シリアル化するすべてのメンバーをDataMemberAttribute属性でマークすることを検討してください。
そこで、サービス契約に戻り、[OperationContract]を[DataContract]に変更しましたが、変更すると同じエラーが発生しました。
誰かが私が間違っていることを親切に教えてくれ、最善の前進方法の例を教えてもらえますか?
御時間ありがとうございます。