Два вопроса по работе с BLToolkit
От: Defazze  
Дата: 13.04.08 18:32
Оценка:
Здраствуйте. Недавно начал осваивать BLToolkit, появились вопросы.

1. Правильно ли я понимаю, что имена возвращаемых из БД полей и наименования параметров хранимых процедур обязательно должны совпадать? Например:
    public abstract class Customer : EditableObject
    {
        [MapField("ID"), PrimaryKey(), NonUpdatable]
        public abstract int CustomerID { get; protected internal set; }
        public abstract string CustomerName { get; set; }
        public abstract string CustomerPhone { get; set; }
    }

    public abstract class CustomerAccessor : DataAccessor<Customer>
    {

        //Процедура возвращает поля ID, CustomerName, CustomerPhone
        [SprocName("p_Customer_Show")]
        public abstract List<Customer> GetCustomerList(int @CustomerID); //Здесь параметр указывается явно, поэтому может быть любым

        //А здесь входные параметры процедуры должны быть обязательно @ID, @CustomerName, @CustomerPhone
        [SprocName("p_Customer_Edit")]
        public abstract void Update(Customer c);
    }

Это возможно обойти? Например указать, что параметры следует создавать на основании свойств класса, а не на основании того, на что они мапятся (в приведенном выше примере: создать @CustomerID вместо @ID)

2. Каков механизм работы со связкой EditableObjectList + ObjectBinder + любой грид, в случае множественной вставки/удаления объектов, желательно с возможностью отмены всех изменений. Есть ли какие-нибудь примеры, рекомендации? Кроме свойства IsDirty, указывающего на изменение объекта, ничего найти не удалось.

Спасибо.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.