ASP.NET WebフォームアプリケーションのフォームをWeb APIに投稿する必要があります。私が使用しようとしているメソッドは、System.Net.WebClient.UploadValues(String, NameValueCollection)POST asp.net WebフォームからWeb API
です。投稿されたフォームフィールド名がモデルプロパティと一致する場合のみ、Web APIはモデルバインドを行います。
しかし、レンダリングされたフォームは、だから、基本的には次が動作しないctl00$ctl00$mainContent$mainContent$DateOfBirth
またはctl00$ctl00$mainContent$mainContent$MA_Address_State
のようなフィールド名を持っています
byte[] responseArray = webClient.UploadValues(action, "POST", Request.Form);
私はクライアント側ですべてのフォームコントロールを通過し、それらを変換することができると思います私の選択のNameValueCollection
に、しかし良い方法がありますか?
これはidと名前が異なる属性になります。 idは私たちが望むものになり、名前は$記号で長い階層構造にとどまっています。 POSTはname属性を使用します。つまり、モデルを受け取ることによってモデルは依然として拘束されません。 – joym8