Не удалось найти свойство с именем 'xxx.yyy' в FormView (двухсторонняя привязка -для вложенных свойств)

У меня возникает эта ошибка при попытке обновить FormView

Не удалось найти свойство с именем «MainContact.FirstName» для типа указанный свойством DataObjectTypeName в ObjectDataSource 'одсФорм'.

Я думаю, это потому, что я использую в EditTemplate текстовое поле, подобное этому

<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; }
   ...
}

Отладчик получает доступ к обработчику событий FormView ItemUpdating, но никогда к Helpers.DataAccessers.EntryHelper.UpdateEntry.

Как я могу решить эту проблему?

7
задан Ryan Kohn 21 August 2012 в 18:27
поделиться