Objectdatasource

Тема в разделе ".NET", создана пользователем DZX, 23 апр 2008.

  1. DZX

    DZX Гость

    Необходимо разъяснение:
    ObjectDataSource работает как связка между GridView и неким бизнес объектом. Update, select и delete проходят как ожидается с Insert загвоздка - если завести в таблице кнопку добавления - никакой реакции, если вызывать в ручную insert у ObjectDataSource - ругается типа не может создать объект для передачи закрепленному методу. :) Для DetailView и FormView insert отрабатывает, а как же с GRidView - можно ли, может где подтолкнуть надо? Help!
     
  2. DZX

    DZX Гость

    Есть GRidView он стандартный, к нему цепится такой ObjectDataSource:

    Код (Text):
    <asp:ObjectDataSource ID="ObjectDataSource1" runat="server" SelectMethod="Select" TypeName="Test_dal.bol" DataObjectTypeName="Test_dal.DBRecord" UpdateMethod="Update"
    onupdated="ObjectDataSource1_Updated" ConflictDetection="CompareAllValues" DeleteMethod="Delete" InsertMethod="Insert" OldValuesParameterFormatString="old_{0}" oninserted="ObjectDataSource1_Inserted">
    </asp:ObjectDataSource>
    Привязан бизнес объект Test_dal.bol, запись базы данных
    определена сущностью Test_dal.DBRecord

    В bol вызывается такая функция базового класса
    где T generetic принимающий DBRecord
    BoResult - возвращает признак успешности выполнения
    операции в DAL и если есть сообщение об ошибке.
    Операцию по вставке умеет делать сам DBRecord

    Код (Text):
    public BoResult Insert(T rec)
    {
    BoResult r = new BoResult(!rec.Insert());
    if (r.WasError)
    r.ErrorMessage = rec.ErrorMessage;
    return r;
    }
    Для DBRecord определены конструкторы без
    параметров и с входным параметром IDataRecord.

    Какая еще нужна информация?
     
  3. DZX

    DZX Гость

    Значится всеже невозможно, жалко однако...
     
  4. alexsid

    alexsid Гость

    Однозначно МОЖНО!

    Только я не помню как этот делал.
    Вроде бы наследовали от ObjectDataSource свой...
     

Поделиться этой страницей