Здравствуйте, коллеги!
"Рисуется" 3-х звенное приложение с кэшем (у app-сервера). DataService будут использовать ORM (сейчас всё вертится на BLToolkit-е). Встал вопрос каким образом реализовать кэширование, и (по возможности) отложенную загрузку на клиенте. Пришли вот в какому варианту:
public abstract class ParentEntity : BizEntity
{
public abstract Guid ID { get; set; }
public abstract Guid ChildID { get; set; }
[MapIgnore]
public ChildEntity Child
{
get { return _dataService.GetObject<ChildEntity>(ChildID); }
protected set { ... }
}
}
Мои сомнения по поводу одновременного хранения ID и самого объекта.
Есть ли более кошерные способы?
P.S. хотим услышать как можно больше вариантов, их "+" и "-", потому что сами уже обессилили в бесконечных спорах о них...