Я хотел бы знать, как я могу сопоставить через ValueInjecter свойства, которые защищены внутренне?
У меня есть абстрактный базовый класс. Поскольку этот класс отражает данные dataTable, он содержит все поля этой таблицы. некоторые свойства активируются в зависимости от конкретного класса.
На примере это должно быть проще для понимания.
абстрактный класс Уровни {
public string Name {get;set;}
открытая строка Code {get; set;}
защищенный внутренний короткий DeliveryType {get; set;}
защищенный внутренний десятичный OverunAllowed {get; set;}
}
класс Заказчик: Уровни {
общедоступное новое десятичное число OverrunAlowed
{
get {return base.OverrunAllowed;}
set {base.OverrunAllowed = value;}
}
}
Class Provider: Tiers {
public new short DeliveryType
{
get {return base.DeliveryType;}
set {base.DeliveryType = value;}
}
}
Это мои бизнес-классы. У меня точно так же на стороне WebServices.
WebServices.Provider и WebServices.Customer наследуется от WebServices.Tiers.
Затем я пытаюсь сопоставить
Business.Customerв и из WebServices.Customer
Business.Provider в и из WebServices.Provider
Но ValueInjecter не отображает защищенные внутренние свойства. Я попытался «привести» мой экземпляр Business к Business.Tiers, а мой экземпляр WebServices - к WebServices.Tiers, а затем отобразить Business.Tiers на и из Webservices.Tiers. Но это не сработает. Есть ли другая техника для выполнения этой глубокой "копии"?
Спасибо