2

次のような POST アクションがあります。

public ActionResult Create([Bind(Include="userrole,credentials.emailAddress,credentials.password")]User u, string confirmPassword, bool agreeToTerms)

デフォルトのモデル バインダーを使用しており、資格情報は User オブジェクトのプロパティです。Credentials には 2 つのフィールド (emailAddress と password) があります。ホワイトリストを削除すると、資格情報オブジェクトがバインドされ、すべてが期待どおりに機能します。ただし、そのホワイトリストを提供すると、userrole はバインドされますが、複雑なプロパティの電子メールとパスワードはバインドされません。フォームの値を確認しましたが、それらがリストされていて、オブジェクトと一致しているため、気になります。

何か不足していますか?

4

1 に答える 1

0

2月にこの質問をしたことは知っていますが、それがまだ有効である場合、両方のテキストボックスを as: <%= Html.TextBoxFor(x => x.credentials.emailAddress) %>または
<%= Html.TextBox("credentials.emailAddress") %>同様のものとして指定しましたか?

credentials重要な点は、テキストボックスがプレフィックスで設定されていることを確認する必要があることです。

于 2011-01-04T12:33:17.477 に答える