プロパティを持つエンティティ クラスがありMailingState
ます。別のプロパティでその値を操作したいので、次を追加しました。
public string MailingStateAbbreviation
{
get { return getStateAbbreviation(MailingState); }
set { MailingState = value; }
}
ただし、DetailsView
EditItemTemplate
編集フォームを送信しようとすると、次のように失敗します。
<asp:DropDownList ID="ddlMailingState" runat="server" DataSourceID="ddlAllStates"
AppendDataBoundItems="True" DataTextField="StateAbbreviation"
DataValueField="StateAbbreviation"
SelectedValue='<%# Bind("MailingStateAbbreviation") %>'>
<asp:ListItem Value="" Text="" />
</asp:DropDownList>
次のエラーが表示されます。
挿入、更新、または削除操作中にエンティティで「MailingStateAbbreviation」という名前のプロパティが見つかりませんでした。バインディング式として指定されたプロパティがデータ ソースで使用できることを確認してください。
に変更Bind
するEval
とSelectedValue
、フォームは正常に送信されますが、MailingState
プロパティは更新されません。エンティティのカスタム プロパティにフォーム コントロールをバインドするにはどうすればよいですか?