FormView を更新しようとすると、このエラーが発生します
ObjectDataSource 'odsForm' の DataObjectTypeName プロパティで指定されたタイプの 'MainContact.FirstName' という名前のプロパティが見つかりませんでした。
EditTemplate でこのような Textbox を使用しているためだと思います
<asp:TextBox Text='<%# Bind("MainContact.FirstName") %>' ID="txtFirstName" runat="server" />
テキストボックスに正しいテキストが表示されますが、更新すると機能しないようです。
これは FormView のデータソースです
<asp:ObjectDataSource ID="odsForm" runat="server" DataObjectTypeName="Helpers.BusinessObjects.EntryItem"
SelectMethod="GetEntryByEmail" TypeName="Helpers.DataAccessers.EntryHelper"
UpdateMethod="UpdateEntry">
<SelectParameters>
<asp:SessionParameter SessionField="email" Name="email" Type="String" />
</SelectParameters>
</asp:ObjectDataSource>
これは EntryItem クラスです
public class EntryItem
{
public int Id { get; set; }
public string Email { get; set; }
public string Password { get; set; }
public Person MainContact { get; set; }
...
}
そして Person クラス
public class Person
{
public int Id { get; set; }
public string FirstName { get; set; }
public string LastName { get; set; }
...
}
デバッガーは FormViewItemUpdating
イベント ハンドラーを取得しますが、Helpers.DataAccessers.EntryHelper.UpdateEntry
.
どうすればこれを解決できますか?